Python3内置函数汇总

目录

Python3 reversed() 函数详解 反转列表获取对象的反向迭代器

reversed()函数的主要作用是获取对象的反向迭代器,参数必须是一个具有__reversed__()方法的对象或者支持序列协议的对象。
它是Python的内置函数,在python文件中直接可以使用。

reversed

语法

reversed(seq)

参数

seq - 需要反向转换的对象,只支持具有__reversed__()方法的对象或者支持序列协议的对象。比较常用的有列表(list),元组(tuple),字符串或range对象等。

返回值

对象的反向迭代器

实例

§ 实例1 - 常规用法
#列表
>>> list(reversed([1, 2, 3, 4, 5]))
[5, 4, 3, 2, 1]

#元组
>>> list(reversed(('a', 'b', 'c', 'd', 'e')))
['e', 'd', 'c', 'b', 'a']

#字符串
>>> list(reversed('abcde'))
['e', 'd', 'c', 'b', 'a']

#range范围对象
>>> list(reversed(range(1, 6)))
[5, 4, 3, 2, 1]
§ 实例2 - 具有__reversed__()方法的对象
#如果类中具有了__reversed__()方法,当直接reversed()函数对类的实例化对象或者在函数中实例化类。都将调用类中的__reversed__()方法。实例中只是一个简单的返回演示,但在实际的业务中一般当使用了__reversed__()方法时,都是因为有比较复杂的判断、过滤、二次处理等等需求,然后把处理后的结果返回。
>>> class main:
...     def __reversed__(self):
...         return [5, 4, 3, 2, 1]
...
>>> o = main()
>>> reversed(o)
[5, 4, 3, 2, 1]
>>> reversed(main())
[5, 4, 3, 2, 1]

如果有任何建议或意见,欢迎交流沟通

作者:张恺阳

本文链接:https://www.zky.name/article/61.html

来源:张恺阳博客