假设我有这些作业:
points = []
point = (1, 2)
为什么这样做:
points += point
它完全正常,给我分数= [1,2]。 但是,如果我做了类似的事情:
points = points + point
它给了我一个TypeError:只能将列表(不是“元组”)连接到列表。 这些陈述不是一回事吗?
答案 0 :(得分:21)
区别在于,list +=
等同于list.extend()
,它接受任何可迭代并扩展列表,它作为元组是可迭代的。 (并将列表扩展到原位)。
另一方面,第二个为points
分配一个新列表,并尝试将列表连接到一个元组,这是不完成的,因为它不清楚预期结果是什么(列表或元组?)