今天刷二级题的时候,遇到一个问题 L2=[1,2,3,4] L3=L2.reverse() print( L3)None print(L3)None print(L2.reverse())None 其实我想让它输出[4,3,2,1] reverse函数,翻转列表 然后我改了一下 L2.reverse() L3=L2 print
今天刷二级题的时候,遇到一个问题
>>> L2=[1,2,3,4] >>> L3=L2.reverse() >>> print( L3) None >>> print(L3) None >>> print(L2.reverse()) None
其实我想让它输出[4,3,2,1]
reverse函数,翻转列表
然后我改了一下
>>> L2.reverse() >>> L3=L2 >>> print(L3) [4, 3, 2, 1] >>> print(L2) [4, 3, 2, 1] >>>
这是在网上找到的解释
a=[1,2,3,4].reverse() – why “a” is None?
看到其讨论说到:
b = [1,2,3,4] a = b.reverse() would change the value of b.
才想起来,原来这个reverse函数,针对列表的操作,其结果是直接改变列表本身(为了节省空间),所以,直接就把原先的list改为你所想要的reversed后的结果了,而返回值,是空的,不返回任何值。
所以,本身直接使用:
a.reverse(); # -> is OK, the self is reversed !!!
补充知识:Python中reverse与reverse=true
排序
a = [2, 3, 1] a.sort(reverse=True) print(a) # [3, 2, 1]
没有排序
a = [2, 3, 1] a.reverse() print(a) # [1, 3, 2]
以上这篇python的reverse函数翻转结果为None的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持易盾网络。