我怎样才能以更有效的方式表达这个结构?
x = [2, 4, 6, 8, 10]
for p in x:
x = x/2
print x
必须有一个好方法来做到这一点。
如果您试图除以x
by 的每个元素2
,那么以下将执行此操作:
x = np.array([2, 4, 6, 8, 10])
x /= 2
x
的结果值为array([1, 2, 3, 4, 5])
。
请注意,上面使用整数(截断)除法。如果你想要浮点除法,要么做成x
一个浮点数组:
x = np.array([2, 4, 6, 8, 10], dtype='float64')
或将部门更改为:
x = x / 2.0
如果它是一个 numpy 数组,您可以一次完成所有操作:
In [4]: from numpy import array
In [5]: x = array([2, 4, 6, 8, 10])
In [6]: print x/2
[1 2 3 4 5]