鱼C论坛

 找回密码
 立即注册
查看: 5505|回复: 24

大家好,咨询一个关于Python的基础问题,求大神解答!

[复制链接]
发表于 2015-4-10 11:42:35 | 显示全部楼层
'='和自身的方法是不一样的。
  1. >>> a = 1
  2. >>> b = a
复制代码

按楼主想的是a += 1 a变成了2,但是b还是1. 这是因为引用不同了。a相当于引用了2,b还是引用了1.
因为1并没有改变,改变的只是a引用的数而已。
同理列表。
  1. >>> c = [1,2]
  2. >>> d = c
复制代码

c += [1] , c.append(1)之类的列表方法。这样改变的是列表自身。并没有改变引用。列表就是那个列表。
  1. >>> id([1, 2, 1])
  2. 31023712
  3. >>> id([1,2])
  4. 31023712
  5. >>> id(1)
  6. 1589165640
  7. >>> id(2)
  8. 1589165656
复制代码

1和2的地址是不同的,但是[1,2,1]和[1,2]的地址却是相同的。
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-10-2 02:24

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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