为了账号安全,请及时绑定邮箱和手机立即绑定

L = T[2] # 第二行“=”能够把L和T[2]联系起来吗

T = (1, 'CH', [3, 4])
L = T[2] # 第二行“=”能够把L和T[2]联系起来吗
print(L) # ==> [3, 4]
# 尝试替换L中的元素
L[1] = 40
print(L) # ==> [3, 40]
print(T) # ==> (1, 'CH', [3, 40])


正在回答

6 回答

看起来Python对变量之间的赋值规则和C/java之类的不太一样,这个赋值规则更像是给双方建立一个联系,而且这个联系是双向的,任何一方的改变都会导致另一方发生同样的改变,不像C之类的语言里,双方仅仅在赋值这个语句执行时产生联系,以上是我个人的推测,如果有误,还请指正

0 回复 有任何疑惑可以回复我~

L和T[2]指向的是同一个内存地址,操作的都是同一个内存地址里面的数据。举个不是很恰当的例子:手机端微信和电脑端微信登录的同一个微信账号,手机端发送了消息,电脑端的消息也会同步!

0 回复 有任何疑惑可以回复我~
L = T[2] #这个只是给L赋值吧 为什么改变L会直接把T[2]直接给改了?


2 回复 有任何疑惑可以回复我~

为什么不可以呢

0 回复 有任何疑惑可以回复我~

你这输出结果不是已经验证了么

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

L = T[2] # 第二行“=”能够把L和T[2]联系起来吗

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信