慕侠1272057
2021-04-07 19:55
T = (1, 'CH', [3, 4]) L = T[2] print(L) # ==> [3, 4] # 尝试替换L中的元素 L[1] = 40 print(L) # ==> [3, 40] print(T) # ==> (1, 'CH', [3, 40])
[3,4]为list,为引用类型,当其他变量赋其值的时候,赋的其实是他的一个内存地址,指向[3,4],当其他变量进行索引赋值,直接导致内存中的list改变。也就是你所说的L和T[2]其实指向了一个内存地址,修改了一个另一个也会跟着变
Python3 入门教程(新版)
154167 学习 · 1075 问题
相似问题