迭代工具

在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
扫描二维码关注公众号,回复: 94396 查看本文章

猜你喜欢

转载自www.cnblogs.com/cjluchen/p/8975324.html