更改一行中的两个数组值 (Python)
Change two array values in one row (Python)
我有一个包含两个元素的数组
q = [0, 0]
元素的值在代码执行期间以下列形式变化:
q[0] += hereHumber
q[1] += 1
是否可以在一行中更改元素?也许和 Numpy 一起?如何? :))))
是的,你可以。您可以传递一个将添加到所有值的值,或者传递一个相同大小的列表,然后将添加 element-wise
import numpy as np
a = np.array([0, 0])
print(a) # [0 0]
a += 2
print(a) # [2 2]
a += [2, 4]
print(a) # [4 6]
默认 python 列表理解是可能的。
q = [0, 0]
q = [q[enum[0]] + num for enum, num in zip(enumerate(q), [here_number, 1])]
但是numpy-way更好。
我有一个包含两个元素的数组
q = [0, 0]
元素的值在代码执行期间以下列形式变化:
q[0] += hereHumber q[1] += 1
是否可以在一行中更改元素?也许和 Numpy 一起?如何? :))))
是的,你可以。您可以传递一个将添加到所有值的值,或者传递一个相同大小的列表,然后将添加 element-wise
import numpy as np
a = np.array([0, 0])
print(a) # [0 0]
a += 2
print(a) # [2 2]
a += [2, 4]
print(a) # [4 6]
默认 python 列表理解是可能的。
q = [0, 0]
q = [q[enum[0]] + num for enum, num in zip(enumerate(q), [here_number, 1])]
但是numpy-way更好。