为什么[0] * 5
创建一个列表[0, 0, 0, 0, 0]
,而不是[[0], [0], [0], [0], [0]]
?
操作员不会*
重复[0]
5 次导致[[0], [0], [0], [0], [0]]
吗?
就像数学一样:
[0] * 5 = [0] + [0] + [0] + [0] + [0]
,即[0, 0, 0, 0, 0]
。
我想如果[0] + [0]
突然变成[[0], [0]]
.
对于字符串、元组和列表,+
是追加运算符。这种乘法适用于所有人。
阅读序列类型的 Python 文档似乎是因为它[0] * 5
是简写[0] + [0] + [0] + [0] + [0]
(就像乘法在数学中是加法的简写一样;在“乘”列表时它的工作原理相同)。
不,它将元素相乘并且 [0] 列表(就像数学集一样)有一个元素 0,而不是 [[0]]。