20.Python的其他场景的迭代工具

时间:2022-07-22
本文章向大家介绍20.Python的其他场景的迭代工具,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

昨天介绍了zip和enumerate两个用于迭代的函数。zip实现并行迭代,用于同是迭代两个序列的场景。enumerate用于迭代序列时同时获取索引和值得场景。今天介绍的两个函数reversed用于反向迭代场景,sorted用于排序后再迭代的场景。

>>> b=sorted([8,3,5,2,9])
>>> b
[2, 3, 5, 8, 9]
>>> for  a in b:
    print(a)    
2
3
5
8
9

sorted返回原来序列排序之后的与原来序列不同的副本序列,不改变原来列表。而sort对原列表就地排序,会改变原列表

>>> a=[8,3,5,2,9]
>>> b=sorted(a)
>>> b
[2, 3, 5, 8, 9]
>>> a
[8, 3, 5, 2, 9]
>>> a.sort()
>>> a
[2, 3, 5, 8, 9]

reversed对序列进行反向,返回一个与zip类似的可迭代对象,需要list函数转换成列表才能以列表显示出来。

>>> b=list(reversed(a))
>>> b
[9, 8, 5, 3, 2]

由于是可迭代对象,所以可直接用在for循环中。

>>> for x in reversed(a):
    print(x)
9
8
5
3
2