Python 在一行中使用append列出理解

Python 在一行中使用append列出理解,python,list,Python,List,我试图对Numpy数组使用列表理解,然后在后面附加另一个元素。然后我注意到一些奇怪的事情 a = [i for i in machine] a.append("All") print(a) 这将返回[251、360、661、662、852,‘全部’] 当 a = [i for i in machine].append("All") 不返回 为什么会返回一个None对象?是否有一种方法可以在一行中完成此操作?append更改您调用它的列表。它不会生成新列表,因此返回None,以避免混淆 Pyt

我试图对Numpy数组使用列表理解,然后在后面附加另一个元素。然后我注意到一些奇怪的事情

a = [i for i in machine]
a.append("All")
print(a)
这将返回[251、360、661、662、852,‘全部’]

a = [i for i in machine].append("All")
不返回


为什么会返回一个None对象?是否有一种方法可以在一行中完成此操作?

append
更改您调用它的列表。它不会生成新列表,因此返回
None
,以避免混淆

Python 3.6+,在列表文字中使用splat(扩展iterable):

a = [*machine, "All"]
前面,使用
+
运算符列出串联:

a = list(machine) + ["All"]

append
更改您调用它的列表。它不会生成新列表,因此返回
None
,以避免混淆

Python 3.6+,在列表文字中使用splat(扩展iterable):

a = [*machine, "All"]
前面,使用
+
运算符列出串联:

a = list(machine) + ["All"]