连接Python列表的问题

wro*_*ame 2 python list concatenation

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

print([6].append([1,1,0,0,0]))
Run Code Online (Sandbox Code Playgroud)

但是,Python返回None.我究竟做错了什么?

Jos*_*ton 10

使用+运算符

>>> [6] + [1,1,0,0,0]
[6, 1, 1, 0, 0, 0]
Run Code Online (Sandbox Code Playgroud)

你试图做的是将一个列表附加到另一个列表,这将导致

>>> [6].append([1,1,0,0,0])
[6, [1,1,0,0,0]]
Run Code Online (Sandbox Code Playgroud)

为什么你看到None返回,是因为.append是破坏性的,修改原始列表,并返回None.它不会返回您要附加的列表.因此,您的列表正在被修改,但您正在打印该函数的输出.append.


joa*_*uin 5

对于列表连接,您有两个选择:

newlist = list1 + list2

list1.extend(list2)
Run Code Online (Sandbox Code Playgroud)

  • 后者修改列表,前者创建一个新列表.这在几个案例中是一个显着的差异. (4认同)