我在使用python for循環時遇到了一些麻煩。我的目標是遍歷一組數據並對每個元素執行算術運算。下面是一個例子循環與大容量算術
import numpy as np
X = np.array([[6.3, 7.4, 4.2], [2.6, 7.8, 9.1], [1.7, 3.9, 6.4]])
A = B = np.zeros((len(X), len(X)))
# Method One
for i in range(len(X)):
for j in range(len(X)):
A[i][j] = X[i][j] + 2 * 5
B[i][j] = X[i][j] + 8
# Method Two
A2 = X + 2 * 5
B2 = X + 8
print "A"
print A
print A2
print A == A2
print "B"
print B
print B2
print B == B2
方法一: 這裏的想法是,我會循環 通過每個元素
方法二: 這種方式,可以一次全部
的原因做我不只是使用方法2,因爲對於某些值,我想執行不同的操作,所以我的想法是使用for循環並在執行操作之前檢查每個值。我只是很困惑,爲什麼這兩種方法產生不同的結果。
如果我切換第9/10行,則結果 被翻轉。
你是什麼意思11/12行?第11行和第12行是空行和「#方法二」。 –
對不起,這是一個錯字。如果您切換for循環中完成的操作順序,則答案會更改。 – eitanlees