序列操作类函数

all()

功能:
判断可迭代对象的每个元素是否都为True值
注意:
If the iterable is empty, return True.(举例3)

回顾:
None     ”      ()     {}       []    0 ==>False
其余 ==>True

举例:

print(all([1, 2, ()]))
#执行结果:False

print(all([1, 2, 3]))
#执行结果:True

print(all([]))
#执行结果:True

 

any()

功能:
判断可迭代对象的元素是否有为True值的元素
注意:
If the iterable is empty, return False.

举例:
print(any([None, 1, 2]))
#执行结果:True

print(any([0, None, ()]))
#执行结果:False

print(any([]))
#执行结果:False

 

filter()

具体用法在之间笔记本有详细介绍

功能:
通过相关的方法过滤可迭代对象的元素

注意:
filter()函数接收一个函数 f 和一个list
这个函数 f 的作用是对每个元素进行判断,返回 True或 False
filter()根据判断结果自动过滤掉不符合条件的元素,返回由符合条件元素组成的新list。
(即函数处理结果为 True 的保留,为 False 的过滤

map()

具体用法在之间笔记本有详细介绍

功能:
通过相关的方法去作用传入的每个可迭代对象的元素,生成新的可迭代对象

注意:
有两个参数,第一个是接收一个函数 f(匿名函数或者自定义函数都OK啦);第二个参数是一个 可迭代对象
功能是通过把函数 f 依次作用在 第二个参数 的每个元素上,得到一个新的 list 并返回。(新的 list 元素的个数与位置与旧的 list 一致)
实质就是内部 for 循环,遍历迭代对象的每一个元素

next()

next(iterator[, default])
功能:
Return the next item from the iterator.
If default is given and the iterator is exhausted, it is returned instead of raising StopIteration.

举例:
a = iter('123')
print(next(a), next(a), next(a))
#执行结果:1 2 3
print(next(a), next(a), next(a), next(a))
# 执行结果:StopIteration(报错)
print(next(a, '*'), next(a, '*'), next(a, '*'), next(a, '*'))
#执行结果:1 2 3 *

 

reversed()

功能:
将目标可迭代对象元素进行反转,生成新的可迭代对象

举例:
a = [1, 2, 3, 4]
print(list(reversed(a)))
print(a)
#执行结果
[4, 3, 2, 1]
[1, 2, 3, 4]

#列表 a 本身并没有发生变化,只是 a 转序生成一个新的序列

 

sorted()

功能:
以升序返回包含iterable中所有项的新列表。
可以提供自定义键功能来自定义排序顺序,以及可以设置反向标志以按降序获得求结果。
默认按照ASCII来进行升序排列

举例:
a = ['a','f','D','b','m','A']
print(sorted(a))
print(sorted(a, key = str.upper))
print(list(reversed(sorted(a)))) #实现目标序列降序排列
# #执行结果:
['A', 'D', 'a', 'b', 'f', 'm']
['a', 'A', 'b', 'D', 'f', 'm']
['m', 'f', 'b', 'a', 'D', 'A']

 

zip()

功能:
将传入的每个迭代器中相同位置的元素进行一一匹配,返回一个新的元组类型迭代器

 

举例:
print(list(zip(['a','b','c','d','e'], [1, 2, 3, 4, 5], ['A','B','C','D','E'])))
#执行结果
[('a', 1, 'A'), ('b', 2, 'B'), ('c', 3, 'C'), ('d', 4, 'D'), ('e', 5, 'E')]

print(list(zip(['a','b','c'], [1, 2, 3, 4], ['A','B','C','D','E'])) #按照元素最少的来进行匹配
#执行结果
[('a', 1, 'A'), ('b', 2, 'B'), ('c', 3, 'C')]

 

版权声明:本文为guoruxin原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/guoruxin/p/9960865.html