码迷,mamicode.com
首页 > 其他好文 > 详细

迭代工具

时间:2018-05-01 00:34:10      阅读:211      评论:0      收藏:0      [点我收藏+]

标签:size   ever   str   code   一起   zip   int   停止   ted   

在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

 

迭代工具

标签:size   ever   str   code   一起   zip   int   停止   ted   

原文地址:https://www.cnblogs.com/cjluchen/p/8975324.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!