在python中连接列表

Kam*_*uri 2 python list multidimensional-array

我有一个3x2列表调用x和1x2列表调用y:

x=[[1,2],[3,4],[5,6]]
Run Code Online (Sandbox Code Playgroud)

y=[10,20]
Run Code Online (Sandbox Code Playgroud)

我的问题是如何连接y到最终x结束4x2列表,如:

x=[[1,2],[3,4],[5,6],[10,20]]
Run Code Online (Sandbox Code Playgroud)

我试过这个:

xx=[x,y]
Run Code Online (Sandbox Code Playgroud)

但它给了我这不是一个4x2列表:

xx=[[[1,2],[3,4],[5,6]],[10,20]]
Run Code Online (Sandbox Code Playgroud)

pok*_*oke 9

>>> x = [[1, 2], [3, 4], [5, 6]]
>>> x
[[1, 2], [3, 4], [5, 6]]
>>> x.append([10, 20])
>>> x
[[1, 2], [3, 4], [5, 6], [10, 20]]
Run Code Online (Sandbox Code Playgroud)

要么:

>>> x = [[1, 2], [3, 4], [5, 6]]
>>> x
[[1, 2], [3, 4], [5, 6]]
>>> x += [[10, 20]] # a list with a list as its only element
>>> x
[[1, 2], [3, 4], [5, 6], [10, 20]]
Run Code Online (Sandbox Code Playgroud)


Lev*_*von 9

鉴于:

x = [[1,2],[3,4],[5,6]]
y = [10,20]
Run Code Online (Sandbox Code Playgroud)

这个:

x.append(y)
Run Code Online (Sandbox Code Playgroud)

会给你:

[[1, 2], [3, 4], [5, 6], [10, 20]]
Run Code Online (Sandbox Code Playgroud)

请注意,这会修改 x.

如果你希望修改x,这是另一种方式:

 xx = x + [y[:]]
Run Code Online (Sandbox Code Playgroud)

设置xx为:

 [[1, 2], [3, 4], [5, 6], [10, 20]]
Run Code Online (Sandbox Code Playgroud)

我们用y[:],而不是简单地y在上面的分配,因为我们要建立的单独副本,y对于xx多后,应(原件)y进行修改不会导致的变化xx.


Ash*_*ary 5

>>> x=[[1,2],[3,4],[5,6]]
>>> y=[10,20]
>>> x.append(y)  # or x.append(list(y)) to append a shallow copy of y
>>> x
[[1, 2], [3, 4], [5, 6], [10, 20]]
Run Code Online (Sandbox Code Playgroud)