鱼C论坛

 找回密码
 立即注册
查看: 1151|回复: 6

[已解决]萌新求助

[复制链接]
发表于 2020-7-21 11:32:29 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
>>> old = [1, 2, 3, 4, 5]
>>> new = old
>>> old = [6]
>>> print(new)
为什么这里打印出来是[1,2,3,4,5]呢,这里new不是应该等于old为[6]吗
最佳答案
2020-7-21 12:33:45
在python中,变量名实际上应该称之为标签,我们会把各个标签贴在各个对象上,同一个对象可以有多个标签,但是一个标签不能贴在多个对象上。
2.jpg

你将变量名重新赋值,意味着将这个标签从原来的地址上撕下来贴到新的地址上去了
可以看看我写的帖子
python细节之2、变量名与标签 变量的赋值与修改
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-7-21 11:34:58 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-7-21 12:15:28 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-7-21 12:33:45 | 显示全部楼层    本楼为最佳答案   
在python中,变量名实际上应该称之为标签,我们会把各个标签贴在各个对象上,同一个对象可以有多个标签,但是一个标签不能贴在多个对象上。
2.jpg

你将变量名重新赋值,意味着将这个标签从原来的地址上撕下来贴到新的地址上去了
可以看看我写的帖子
python细节之2、变量名与标签 变量的赋值与修改
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

发表于 2020-7-24 08:36:07 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-7-25 10:02:20 | 显示全部楼层
将old付给new时,old标签指向[1,2,3,4,5] ,所以new标签指向[1,2,3,4,5],之后改变old标签指向,不会影响new标签。比如:我上线告诉你我在北京,然后悄悄去上海,在上线问你,你知道我的位置仍是北京
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-7-31 19:49:01 | 显示全部楼层
因为new指向的并不是old而是old所代表的值,当old指向[6]时,new任然指向[1,2,3,4,5]
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-1-19 17:15

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表