在创建列表时和创建列表后应用它们时,extend 和 append 方法有什么区别

What's the difference in the extend and append methods when applying them while creating a list and after having created the list

我想知道为什么在创建列表时使用附加和扩展方法时,代码returns none,但是在创建列表后应用它们时,结果符合预期。

代码如下:

mylist = list(range(1,10))
mylist.extend(list(range(20,30)))
print(mylist)

mylist = list(range(1,10))
mylist.append(list(range(20,30)))
print(mylist)

这导致 [1, 2, 3, 4, 5, 6, 7, 8, 9, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29]

[1, 2, 3, 4, 5, 6, 7, 8, 9, [20, 21, 22, 23, 24, 25, 26, 27, 28, 29]]

但是当使用

mylist = list(range(1,10)).extend(list(range(20,30)))
print(mylist)

mylist = list(range(1,10)).extend(list(range(20,30)))
print(mylist)

它们都导致 None

我正在使用 python 3.7.0

list.extendlist.append return 值都没有;他们只修改他们的对象。

如果您想创建一个新列表并将其分配给不同的变量,您应该使用 + 运算符。

(但请注意,在您的示例代码中,您使用了 .extend 两次,而不是 .append)。