Python中reverse()和reversed()的用法


一、reverse()

  1. reverse()是Python列表的一个内置方法

    • 不接收任何参数

    • 只适用于列表

    • 用于列表中元素的反转

    • 返回值是None,直接作用于原列表

  2. 示例

    ls = [1, 2, 3]
    ls.reverse()
    print(ls)
    print(ls.reverse())
    type(ls.reverse())

    结果

    [3, 2, 1]

    None

    <class ‘NoneType’>

二、reversed()

  1. reversed()是Python的一个内置方法(就是一个类)点击查看

    • 接收一个参数seq,seq必须是一个具有__reversed__()方法的对象或者是支持该序列协议(具有从0开始的整数类型参数的__len__()方法和__getitem__()方法)
    • 适用于列表、元祖、字符串
    • 反转可迭代序列中的值
    • 结果返回一个迭代器,可通过遍历、list转化或者next方法获取值。
  2. 示例

    • 列表

      ls = [1, 2, 3]
      print(list(reversed(ls)))

      结果:

      [3, 2, 1]

    • 元组

      t = (1, 2, 3,)
      print(tuple(reversed(t)))

      结果:

      (3, 2, 1)

    • 字符串

      s = 'abcd'
      print(str(reversed(s)))
      print(''.join(reversed()))

      结果:

      <reversed object at 0xxxxxxxxx>

      dcba

  3. 注意

    • 对字典使用reversed(),得到错误TypeError: 'dict' object is not reversible

    • 对集合使用,错误TypeError: 'set' object is not reversible


文章作者: Arvin He
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 Arvin He !
评论
 上一篇
344. 反转字符串 344. 反转字符串
编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组 char[] 的形式给出。
2020-10-08
下一篇 
18. 四数之和 18. 四数之和
给定一个包含 n 个整数的数组 nums 和一个值 target, 判断 nums 中是否存在四个元素a, b, c 和 d,使得a+b+c+d的值与 target 想等?找出所有满足条件且不重复的四元组。
2020-10-05
  目录