Python .reverse() 和 .extend()

Python .reverse() and .extend()

我是 Python 的初学者。我尝试从 1~5 创建一个列表,然后打印出反向列表并像 [1,2,3,4,5,5,4,3,2,1] 一样组合它们,这是我的工作。

num1 = list(range(1,6))
num2 = num1.reverse()
print(num1)
print(num2)
print(num1.extend(num2))

num1 的输出是反向的[5,4,3,2,1]。 num2 的输出是 None 并且扩展函数不起作用。 .reverse().extend() 是如何工作的?

list.reverse()

就地反转 - 因此您的原始列表被反转。还有,reverse() 方法 returns None

因此你的 num1 被反转了 & num2None

同样,extend也修改了参数列表&returnsNone

要完成这项工作:

num1 = list(range(1,6))
num2 = num1[::-1]
print(num1)
print(num2)
num1.extend(num2)
print(num1)

给出:

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

list.reverse() 没有 return 任何东西;它变异 num1 是它的反面。

list.extend() 接受另一个列表,并将该列表中的所有元素添加到您正在调用的列表中。由于 list.reverse() 没有 return 任何东西,因此 num2 变为 None。因此,您正在使用 none 扩展 num2,这不会导致对 num1.

的任何更改

有关某些列表方法的说明,请参阅 here