我是python的新手。我正在学习一些基本的东西。我在python列表上做了一些像three_lists=[]*3
这样的操作,当我执行这段代码时,它只给我一个像[]
这样的空列表。为什么它不给我3个空列表?有些像这样[],[],[]
答案 0 :(得分:7)
它正好在Python docs
中
s * n
或n * s
相当于将s
添加到自身n
次
其中s
是序列而n
是int
。例如
>>> [1,2,3]*3
[1, 2, 3, 1, 2, 3, 1, 2, 3]
这也与其他序列一致,例如str
>>> 'hello'*3
'hellohellohello'
如果你想要一个包含3个空列表的列表,你可以说
>>> [[] for _ in range(3)]
[[], [], []]
答案 1 :(得分:2)
它没有多次列出列表中的多个项目 例如
>>> x = []*3
>>> x
[]
>>> y = [1]*3
>>> y
[1, 1, 1]
答案 2 :(得分:1)
算术规则(编程中的运算符)仍然适用,你不能多次使用'0'或空值并获得不同的东西,你得到之前的原始值。