如何将列表中的所有元素与给定常数相乘?

问题描述

 [[[-7.0,-7.0],[-7.0,-7.0]],[[-7.0,-7.0]]]

我想使用Python将列表中的所有数字乘以一个常数(例如(-1)),但是列表仍然具有原始格式。我试图通过3个“ for”循环来做到这一点,但是有一种简短的方法可以做到这一点吗?谢谢!

解决方法

以下代码可以将所有数字乘以一个常数。要进行更高级的操作,您可能需要查看np.vectorizenp.apply

import numpy as np

nested_list = [[[-7.0,-7.0],[-7.0,-7.0]],[[-7.0,-7.0]]]
numpy_list = np.array(nested_list)

negated_list = -1 * numpy_list