大家好我很抱歉,如果這是一個noob問題,但我使用python和我有一個問題,我複製一個數組,但然後當我修改它影響原件的副本。我想一個線性從邊界矩陣偏移添加到一組座標:Python修改數組副本影響原始?
boundaries = [[5.818, 0.0, 0.0], [0.0, 5.818, 0.0], [0.0, 0.0, 5.818]]
xyzCoord = [[0.0, 0.0, 0.0], [2.909, 2.909, 0.0], ...
extraX=[]
for i in range(0,len(xyzCoord)):
toAdd=[]
toAdd=xyzCoord[i]
toAdd[0]=toAdd[0]+boundaries[0][0]
print xyzCoord
我期望的輸出是xyzCoord應該不會受到影響,因爲我做重複(TOADD),然後修改。奇怪的是這個循環會影響我的xyzCoord:
輸出是:
[[5.818, 0.0, 0.0], [0.0, 5.818, 0.0], [0.0, 0.0, 5.818]]
[[0.0, 0.0, 0.0], [2.909, 2.909, 0.0], ...
[[5.818, 0.0, 0.0], [8.727, 2.909, 0.0], ...
編輯:對於背景下,這個想法是,我希望最終能與轉置值,然後一個單獨的列表最終創建一個插入列表,但這部分阻止了我。即我希望創建: [[0.0,0.0,0.0],[5.818,0.0,0.0],[2.909,0.0,0.0],[8.727,2.909,0.0] ...] ,然後製作更大循環爲Y和Z.這樣我可以在XY和Z中傳播一些座標和任意次數。
感謝您的幫助,這完全奏效! – Coherent