目录
1.序列的判断
all(utterable)函数表示:判断可迭代参数utterable中的所有元素是否都为True。
any(iterable)函数表示:判断可迭代参数iterable是否全部都为False,如果有一个为True,则返回True。
例如:
all(["a","b","c","d"])
>>>True
all(["a","b","c","d",0])
>>>False
any(["a","b","c","d",0])
>>>True
any([0])
>>>False
2.enumerate()函数
enumerate()函数表示:将可迭代对象中的每一个元素从0开始的序号共同构成一个二元组的列表。
例如:
num = ["one","two","three"]
list(enumerate(num))
>>>[(0, 'one'), (1, 'two'), (2, 'three')]
list(enumerate(num,start=2)) #start表示下标从2开始
>>>[(2, 'one'), (3, 'two'), (4, 'three')]
3.zip()函数
zip()函数表示:将可迭代对象中对应的元素打包成一个个元组,如何返回由这些元组组成的列表。
注意:如果元组之间的元素数量不一致,以元素个数与最短的列表为准。
例如:
a = [1,2,3]
b = [4,5,6]
c = [7,8,9,10]
zipped = zip(a,b)
list(zipped)
>>>[(1, 4), (2, 5), (3, 6)]
zipped =zip(b,c) #c列表有4个元素,但只打包成3个元组
list(zipped)
>>>[(4, 7), (5, 8), (6, 9)]
4.map()函数
map()函数表示:根据提供的函数对指定的可迭代对象的每个元素进行运算,并将返回的运算结果的迭代器。
例如:
mapped = map(pow,[2,3,10],[5,2,3]) #pow表示次方^,例如2^5=32
list(mapped)
[32, 9, 1000]
5.filter()函数
filter()函数表示:根据提供的函数对指定的可迭代对象的每一个元素进行运算,并将运算结果为真的元素,以迭代器的形式返回。
例如:
list(filter(str.islower,"Csdn")) #islower在字符串函数的文章有所介绍
['s', 'd', 'n']
注意:
1. islower判断是否为小写,如果是则返回True。
2. 迭代器和可迭代对象的区别:
一个迭代器看到是一个可迭代对象,
可迭代对象可以重复使用,但迭代器是一次性的。
3. iter()函数可以用来生产迭代器
4. next()函数可以返回迭代器的下一个项目。