连接Python列表的问题

时间:2011-03-05 10:32:04

标签: python list concatenation

我试图通过这样做来连接两个列表,一个只有一个元素:

print([6].append([1,1,0,0,0]))

然而,Python返回None。我做错了什么?

4 个答案:

答案 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]