在附加到列表并分配变量时,Python返回“ None”吗?

时间:2018-08-14 07:44:40

标签: python

我正在尝试实现以下代码段

x=[1,2,3,4]
y=[5,6]
a=[]
a=x.append(y)
print(a)

但是它什么也没有返回,而不是[1,2,3,4,[5,6]]谁能帮助我吗?

6 个答案:

答案 0 :(得分:2)

append方法不返回任何值。它将在适当位置修改列表。您需要

in[1]: a  = x + y 

in[2]: a
out[2]: [1, 2, 3, 4, 5, 6]  

如果要获取输出[1, 2, 3, 4, [5, 6]],则

in[3]: x.append(y)

in[4]: x
out[4]: [1, 2, 3, 4, [5, 6]]

答案 1 :(得分:1)

index bin1 bin2 bin3 bin4 bin5 amt1 amt2 amt3 amt4 amt5
1     440  450  460  470  480   0    11   2    5    0
2     440  450  460  470  480   8     8   2    0    0
3     440  450  460  470  480   0     0  10    0    9
4     440  450  460  470  480   0     7   0    2    4

输出

x = [1, 2, 3, 4]
y = [5, 6]

a = x + y
print(a)

代码:

[1, 2, 3, 4, 5, 6]

输出:

x = [1, 2, 3, 4]
y = [5, 6]
x.append(y)

答案 2 :(得分:0)

您可以轻松实现它

x=[1,2,3,4]
y=[5,6]
a = x + y 
a # [1, 2, 3, 4, 5, 6]

您将获得None,因为x.append(i)将不会返回任何内容。你可以看到它

x=[1,2,3,4]
y=[5,6]
a=[]
for i in y:
    x.append(y)
print(x) # [1, 2, 3, 4, 5, 6]

答案 3 :(得分:0)

如果您仍想使用list.append()函数,则可以执行以下操作:

x=[1,2,3,4]
y=[5,6]
a=[]
for i in x:
    a.append(i)
for i in y:
    a.append(i)
print(a)

答案 4 :(得分:0)

使用列表串联-

a = x + y

Python支持adding两个列表。同样在您的代码中-

a=x.append(y) 

您要将y的值附加到x,并且因为append返回None,所以分配了None

答案 5 :(得分:0)

您可以使用extend

x.extend(y) # x = [1, 2, 3, 4, 5, 6]