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

'''
扫描二维码关注公众号,回复: 10045190 查看本文章
发布了96 篇原创文章 · 获赞 76 · 访问量 4万+

猜你喜欢

转载自blog.csdn.net/u010244992/article/details/104781904