python的reverse函数翻转结果为None

今天刷二级题的时候,遇到一个问题

>>> 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 !!!

  • 12
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值