Python 入门学习:内置了4种常用迭代函数

目录

Python 内置了4种常用迭代函数


 

Python 内置了4种常用迭代函数

for循环,循环/遍历一个可迭代对象,主要是用来遍历 序列(列表、字符串、元祖)、字典和集合
enumerate(seq)               # 编号迭代
sorted(seq)                  # 排序迭代
reversed(seq)                # 翻转迭代
zip(seq1,seq2....)           # 并行迭代

a = 'abc'

for index,value in enumerate(a):   # 在迭代的时候既返回序列的编号(默认从0开始),又返回序列中元素
    print(index,value)              # 需要两个循环变量,分别接收编号和元素的值

>>>  0   a 
     1   b
     2   c

# sorted()  排序迭代

# for循环变量的时候, 默认先遍历序列中较小的值,后遍历序列中较大的值。

# 可迭代对象中的元素,需要是可排序的同类数据

a = [3,5,9,6]
for i in sorted(a):
    print(i)

>>> 3,5,6,9

# reversed()  翻转迭代
# 将可迭代对象中的元素,从尾到头,进行遍历
# 不是大小排序

a = [1,5,4,2]
for i in reversed(a):
    print(i)

>>>2,4,5,1

# zip()

# 同时遍历可迭代对象中,同一序号元素。

# 如果元素长度不一致,只遍历到最短的序列长度

x = [1,2]
y = [3,4]
z = [5,6,7]

for a,b,c in zip(x,y,z):
    print(a,b,c)


>>>   1 3  5
      2  4  6




filter() 函数用于过滤序列,过滤掉不符合条件的元素,返回由符合条件元素组成的新filter 类. 

在函数中设定过滤条件,迭代元素,保留返回值为True的元素.

fil = filter(lambda x: x>10,[1,11,2,45,7,6,13])
print(list(fil))

实例:

过滤出1~100中平方根是整数的数

import math
def sqr(x):
    return math.sqrt(x) % 1 == 0

fi2=filter(sqr,range(1,101))
print(list(fi2))


'''
def sqr(x):
    s=math.sqrt(x) %1== 0
    return s

'''

实例:函数enumerate(seq)

import time
def product():
    num=[]
    for i in range(5):
        time.sleep(0.1)
        num.append('口罩数量:%s' %i)
        print(num)
    return num
    
def consumer(res):
    for index,baozi in enumerate(res):
        time.sleep(0.1)
    print('第%s天,生产了%s个。' %(index,baozi))

res=product()
consumer(res)

 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值