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

把一个List赋值为Tuple的一个元素,通过改变List为什么不能改变这个元素?

t = ('a', 'b', ['A', 'B'])
L = t[0]
L[0] = 'x'
print t
print L

以上,输出的结果为什么还是如以下所示?

('a', 'b', ['A', 'B'])

a


正在回答

3 回答

变量间复制,可变对象是引用,不可变是值copy(新生成值空间,不是变量对象空间).

建议阅读链接:http://blog.csdn.net/longshenlmj/article/details/13773977

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

t[0]指向的是'a',是Tuple类型,不可变,t[2]指向一个list,list元素改变,但指向不变

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

['A', 'B']的索引是2,要先选择索引2这个list元素,把L = t[0],改成

L = t[2]

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

举报

0/150
提交
取消
初识Python
  • 参与学习       758357    人
  • 解答问题       8967    个

学python入门视频教程,让你快速入门并能编写简单的Python程序

进入课程

把一个List赋值为Tuple的一个元素,通过改变List为什么不能改变这个元素?

我要回答 关注问题
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号