大家好,如果这是一个菜鸟问题,我很抱歉,但我使用的是 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 中传播一些坐标以及任意次数。