a += b 和 a = + b真的相同吗?
举个例子
a = 5
b = a
b += 5
print(a, b)
结果
a, b 10, 10
看到结果你,会不会想打死博主,你怎么回事?
不要急,再给你举个例子
a = [1, 2]
b = a
b += [3, 4]
print(a, b)
b = b + [5, 6]
print(a, b)
结果
a, b [1, 2, 3, 4], [1, 2, 3, 4]
a, b [1, 2, 3, 4], [1, 2, 3, 4, 5, 6]
现在总不会骂博主了吧!!! =_=
很明显看得出来,在单个数字的运算过程中,a+= b和a= a+b的效果一样,都是将结果保存在原有存储位置,但是如果a, b变为list,将会产生区别,a += b会在原有的内存上存储新的值,但是a = a + b将会赋予新的值。
小伙伴们要清楚哦!!!
祝好。
本文探讨了在Python中a+=b和a=a+b的区别,特别是在处理数字和列表时的不同行为。当涉及单个数字时,两者效果相同,但在列表操作中,a+=b会修改原列表,而a=a+b创建并赋值新列表。理解这些差异对于避免潜在的编程陷阱至关重要。
2051

被折叠的 条评论
为什么被折叠?



