在Python中更改变量值而不显式更改它们
我有以下代码:在Python中更改变量值而不显式更改它们,python,Python,我有以下代码: U_abs = abs(U) index_max = np.argmax(U_abs[k:n,k]) memory_1 = U[k:n,k] memory_2 = U[k:n,indice_max] print(memory_1) print(memory_2) U[k:n,k] = memory_2 U[k:n,indice_max]= memory_1 print(memory_1) p
U_abs = abs(U)
index_max = np.argmax(U_abs[k:n,k])
memory_1 = U[k:n,k]
memory_2 = U[k:n,indice_max]
print(memory_1)
print(memory_2)
U[k:n,k] = memory_2
U[k:n,indice_max]= memory_1
print(memory_1)
print(memory_2)
我需要
memory\U 1
和memory\U 2
的值不要更改,但是当我更改U[k:n,k]
和U[k:n,index\U max]的值时,memory\U 1
和memory\U 2
的值会更改。这是我学习Python的第一天。你知道如何解决这个问题吗?我假设你在这里所做的一切都是使用NumPy。如果是这样,可以使用“复制”操作符替换第3行和第4行:
memory_1 = U[k:n,k].copy()
memory_2 = U[k:n,indice_max].copy()
更多的上下文和实际输出会有所帮助