Rya*_*axe 8 python reverse list
老实说,我只是不明白为什么会返回None而不是反向列表:
>>> l = range(10)
>>> print l
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> print l.reverse()
None
Run Code Online (Sandbox Code Playgroud)
为什么会这样?根据文件,我没有做错任何事.
mdm*_*dml 15
reverse修改列表并返回None.如果你这样做
l.reverse()
print l
Run Code Online (Sandbox Code Playgroud)
您将看到您的列表已被修改.
L.reverse()修改 L 到位。作为一般规则,Python 的内置方法要么改变要么返回一些东西,但不能两者兼而有之
反转列表的常用方法是使用
print L[::-1]
Run Code Online (Sandbox Code Playgroud)
reversed(L)返回一个listreverseiterator object很好的迭代,但如果你真的想要一个列表就不是那么好
[::-1]只是一个普通的切片- 这一步是-1让你得到一个从结尾开始到开头结束的副本
list.reverse()将列表反转到位.它不会返回反转列表.为此,使用reversed()功能:
print reversed(l)
Run Code Online (Sandbox Code Playgroud)
或者只使用扩展切片表示法:
print l[::-1]
Run Code Online (Sandbox Code Playgroud)