迭代工具
Posted cjluchen
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了迭代工具相关的知识,希望对你有一定的参考价值。
在python中,迭代序列或者其他可迭代对象时,有一些常用函数
1.并行迭代:
程序可以同时迭代两个序列:
student=[‘xiaoming‘,‘xiaohong‘,‘xiaogang‘] number=[1001,1002,1003] for i in range(len(student)): print(student[i],‘的学号是:‘,number[i])
#输出:
xiaoming 的学号是: 1001
xiaohong 的学号是: 1002
xiaogang 的学号是: 1003
2.zip函数
在python中,内建的zip函数用来进行并行迭代,可以把两个序列合并在一起,返回一个元组的列表,例如:
student=[‘xiaoming‘,‘xiaohong‘,‘xiaogang‘] number=[1001,1002,1003] for name,num in zip(student,number): print(name,‘的学号是:‘,num)
#输出:
xiaoming 的学号是: 1001
xiaohong 的学号是: 1002
xiaogang 的学号是: 1003
结果和上面的一样。
zip函数可以用于任意数量的序列,并且可以应付不等长的序列,当短序列“用完”时,就会停止。
student=[‘xiaoming‘,‘xiaohong‘,‘xiaogang‘,‘xiaopang‘,‘xiaozhi‘] number=[1001,1002,1003] for name,num in zip(student,number): print(name,‘的学号是:‘,num)
#输出
xiaoming 的学号是: 1001
xiaohong 的学号是: 1002
xiaogang 的学号是: 1003
由输出结果可见,zip函数以短序列为准,当短序列遍历结束时,for循环就会遍历结束。
3.翻转和排序迭代
reverse和sort方法是列表专有的方法,而reversed()和sorted()函数适用于所有的序列和可迭代对象,但不是原地修改对象,而是返回翻转或排序后的版本。
a=[1,2,5,3,3,9,4,6,4,3] b=[2,3,4,5,7,6,1,6,6,3] a.sort() print(a)
b.reverse() print(b)
c="hello world" d=sorted(c) print(d)
e="hello world" f=list(reversed(e))#reverse()函数返回的是一个可迭代对象,所以需要把它转化成一个列表 print(f)
g="hello world" h=‘‘.join(reversed(g)) print(h)
#输出
[1, 2, 3, 3, 3, 4, 4, 5, 6, 9]
[3, 6, 6, 1, 6, 7, 5, 4, 3, 2]
[‘ ‘, ‘d‘, ‘e‘, ‘h‘, ‘l‘, ‘l‘, ‘l‘, ‘o‘, ‘o‘, ‘r‘, ‘w‘]
[‘d‘, ‘l‘, ‘r‘, ‘o‘, ‘w‘, ‘ ‘, ‘o‘, ‘l‘, ‘l‘, ‘e‘, ‘h‘]
dlrow olleh
以上是关于迭代工具的主要内容,如果未能解决你的问题,请参考以下文章