我有以下代码:
sales_data = [[12, 17, 22], [2, 10, 3], [5, 12, 13]]
scoops_sold = 0
我最初写道:
for location in sales_data:
print(location)
for element in location:
scoops_sold + element
print(scoops_sold)
经过一番折腾,我发现我在 +
符号后面缺少了一个 =
。
为什么+=
要加上int的和。一个列表到另一个列表而不仅仅是 +
?
最佳答案
目前,之前的所有答案,包括已接受的答案,都完全误导,请注意这两个不同 python 结构之间的区别:
+
运算符从两个操作数生成一个新列表:>>> a = b = [1] >>> a = a + [2] >>> a, b [1, 2], [1]
这里,
a
和b
最初都指向相同列表。然后我们创建了一个new列表并将其反弹到变量a
+=
运算符,修改现有列表>>> a = b = [1] >>> a += [2] >>> a, b [1, 2], [1, 2]
这里,
a
和b
最初都指向相同列表。然后我们修改了相同的列表。
要点...语法a = a + b
不是缩写 a += b
关于python - 为什么 += 添加和 int.从一个列表到另一个列表而不仅仅是+?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61023696/