鱼C论坛

 找回密码
 立即注册
12
返回列表 发新帖
楼主: VisionY

Python的列表问题

[复制链接]
发表于 2018-6-14 22:48:37 | 显示全部楼层
>>> m = [1,2,3]
>>> n = m
>>> m.remove(2)
>>> print(n)
[1, 3]
>>> m
[1, 3]
>>> n
[1, 3]
这是我刚做的,我感觉是你说的print(new)应该是[6]吧
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-6-15 02:28:51 | 显示全部楼层
  1. >>> a = 1
  2. >>> id(a)
  3. 507098784
  4. >>> b = a
  5. >>> id(b)
  6. 507098784
  7. >>> id(a) == id(b)
  8. True
  9. >>> a = 2
  10. >>> id(a)
  11. 507098816
  12. >>> id(a) == id(b)
  13. False
  14. >>> b
  15. 1
  16. >>> id(b)
  17. 507098784
  18. >>>
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-7-31 06:10:09 | 显示全部楼层
allen-xy 发表于 2018-6-8 09:30
在做完第二步后,你查看一下这两个变量的id。
id(old)
id(new)

那是为什么呢? 是因为赋值的长度不同,然后系统开了另外一个地址给old吗?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-8-10 03:44:20 | 显示全部楼层

我想请问,为什么重新赋值就是换id了,如果我只修改列表里面的元素,那ID也会变吗?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-8-10 17:19:21 | 显示全部楼层
old = [6]  这里其实是又重新开辟了个空间
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-20 18:09

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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