python中reverse函数的作用_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 !!!

补充知识: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的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

  • 4
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Pythonreverse函数用于将序列(如列表、元组、字符串)的元素倒序排列。该函数没有返回值,会直接在原序列上进行修改。 语法: ``` list.reverse() ``` 示例: ``` >>> numbers = [1, 2, 3, 4, 5] >>> numbers.reverse() >>> print(numbers) [5, 4, 3, 2, 1] ``` 注意:该函数只能在列表上使用 ### 回答2: Pythonreverse函数是指对于一个序列(列表或字符串),将其顺序翻转,也就是将其最后一个元素变成第一个元素,第一个元素变成最后一个元素,以此类推。它的作用主要是改变列表的顺序,经常用于列表题目当。 在Python,序列可以通过调用reverse()方法来实现翻转。调用reverse()方法时,如果参数列表没有任何参数,它会将整个列表翻转,也就是将原来的列表顺序进行翻转。如果参数列表有两个参数,则它将从第一个位置到第二个位置之间的元素进行反转。调用reverse()方法后会改变原始列表的元素顺序,而不是创建一个新的列表。 下面是使用reverse()函数的示例代码: lst = [1, 2, 3, 4, 5] lst.reverse() print(lst) 在这个例子,我们定义了一个包含数字1到5的列表lst,并调用了reverse()函数将其翻转输出结果为[5, 4, 3, 2, 1],表明列表的元素已经按照翻转顺序排列。 需要注意的是,reverse()函数是在列表内部操作的,它没有返回值,但是会改变原始列表的顺序。如果想要创建一个翻转顺序的新列表,可以在调用reverse()函数之前使用切片来进行复制。 总之,Pythonreverse()函数是一种方便的列表操作,可以快速地将列表的元素按反转顺序重新排列。它的使用非常简单,但也需要注意一些事项。在实际的编程,应该根据具体需求灵活运用这个函数。 ### 回答3: 在Pythonreverse()函数可以用于对列表、元组和字符串等可迭代对象进行翻转操作,即将原来的序列颠倒顺序。reverse()函数没有返回值,直接修改原对象。 具体的语法为: 可迭代对象.reverse() 例如,对列表进行翻转操作: ```python a = [1, 2, 3, 4, 5] a.reverse() print(a) ``` 输出结果为: ``` [5, 4, 3, 2, 1] ``` 对元组进行翻转操作: ```python b = (1, 2, 3, 4, 5) c = list(b) c.reverse() print(tuple(c)) ``` 输出结果为: ``` (5, 4, 3, 2, 1) ``` 对字符串进行翻转操作: ```python d = 'hello world!' e = list(d) e.reverse() print(''.join(e)) ``` 输出结果为: ``` !dlrow olleh ``` 需要注意的是,reverse()函数只能用于可变对象,如列表和字节数组等。对于不可变对象,如元组和字符串,需要先将其转换为可变对象,再进行翻转操作。 除此之外,Python还提供了reversed()函数,它与reverse()函数功能类似,也可以将序列翻转,但是它返回的是一个迭代器,需要用for循环或将其转换为列表等可迭代对象进行使用。 总之,reverse()函数Python内置的一个非常方便的操作函数,可以轻松实现序列的翻转操作。同时,对于像列表这样的可变对象,还可以直接在原对象上进行修改,避免了额外创建新的对象。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值