2018-11-06
阅读量:
896
Python中a =b一定等于a=a b吗
在python中,a + = b并不总是与a = a + b的行为相同,相同的操作数可能会在不同的条件下给出不同的结果。
考虑这些列表操作示例:
示例1
list1 =
[5, 4, 3, 2, 1]
list2 =
list1
list1 +=
[1, 2, 3, 4]
print(list1)
print(list2)
输出:
[5,4,3,2,1,1,2,3,4]
[5,4,3,2,1,1,2,3,4]
例2
list1 =
[5, 4, 3, 2, 1]
list2 =
list1
list1 =
list1 +
[1, 2, 3, 4]
print(list1)
print(list2)
输出:
[5,4,3,2,1,1,2,3,4]
[5,4,3,2,1]
- 表达式list1 + = [1,2,3,4]就地修改列表,意味着它扩展了列表,使得“list1”和“list2”仍然具有对同一列表的引用。
- 表达式list1 = list1 + [1,2,3,4]创建一个新列表并更改对该新列表的“list1”引用,“list2”仍然引用旧列表。






评论(0)


暂无数据
推荐帖子
0条评论
0条评论
1条评论