lzjun 发表于 2017-2-5 13:02:29

Python 表达式 i += x 与 i = i + x 等价吗?

Python 表达式 i += x 与 i = i + x 等价吗?如果你的回答是yes,那么恭喜你正确了50%,为什么说只对了一半呢? 按照我们的一般理解它们俩是等价的,整数操作时两者没什么异同,但是对于列表操作,是不是也一样呢?先看下面两段代码:

代码1

>>> l1 = range(3)
>>> l2 = l1
>>> l2 +=
>>> l1

>>> l2

代码2

>>> l1 = range(3)
>>> l2 = l1
>>> l2 = l2 +
>>> l1

>>> l2

代码1与代码2中的l2的值是一样的,但是l1的值却不一样,说明 i += x 与 i = i + x 是不等价的,那什么情况下等价,什么情况下不等价呢?

扫一扫关注公众号『一个程序员的微站』获取最新文章

Miss_love 发表于 2017-2-7 16:41:52

+号两边格式需一致。

梦想家 发表于 2017-2-7 16:53:44

:L

jingzizx 发表于 2017-2-10 11:15:16

:victory:
页: [1]
查看完整版本: Python 表达式 i += x 与 i = i + x 等价吗?