Python:一行代码实现列表反转

3
ls = list(range(10))
ls.reverse()
print(ls)

为什么这个代码可以从9开始倒数计数,而这个却不行:
ls = list(range(10)).reverse()
print(ls)

这最后两行代码会输出以下内容:
None

他们不应该是同一个东西吗?

2
因为.reverse是原地操作,按照惯例它返回None。没有理由认为它们应该是相同的东西。它们可以并且确实有不同的工作方式。请注意,您可以使用list(reversed(range(10)) - juanpa.arrivillaga
1个回答

1
不行,因为list.reverse()会原地反转列表并返回None。请参阅list documentation
你可以这样使用reversed()
countdown = list(reversed(range(10)))
print(countdown)

查看反向文档

还可以查看这个问题


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接