我试图通过这样做来连接两个列表,一个只有一个元素:
print([6].append([1,1,0,0,0]))
然而,Python返回None
。我做错了什么?
答案 0 :(得分:10)
使用+运算符
>>> [6] + [1,1,0,0,0]
[6, 1, 1, 0, 0, 0]
您尝试做的是将列表附加到另一个列表,这将导致
>>> [6].append([1,1,0,0,0])
[6, [1,1,0,0,0]]
为什么您看到None
返回,是因为.append
具有破坏性,修改原始列表并返回None
。它不会返回您要附加的列表。因此,您的列表正在被修改,但您正在打印函数.append
的输出。
答案 1 :(得分:5)
对于列表连接,您有两个选择:
newlist = list1 + list2
list1.extend(list2)
答案 2 :(得分:1)
首先使用列表(除非您以后真的不想使用您的数据)
>>> a=[6]
>>> a.append([1,1,0,0,0])
>>> a
[6, [1, 1, 0, 0, 0]]
另一种方法是使用extend()
代替append()
>>> a=[6]
>>> a.extend([1,1,0,0,0])
>>> a
[6, 1, 1, 0, 0, 0]
答案 3 :(得分:0)
l1 = [6]
l2 = [1, 1, 0, 0, 0]
l1.extend(l2)
print l1
[6, 1, 1, 0, 0, 0]