1.all()函数——判断序列函数是否为True
语法:all(iterable)
元素除了0,空,False,都是True
2.iter()函数——生成迭代器
语法:iter(object[,sentinel])
例子:
1.自定义函数实现累加计数
class add:
def __init__(self,_start,_end):
self.start =_start
self.end = _end
def get_next(self):
s = self.start
if(self.start < self.end):
self.start+=1
else:
raise StopAsyncIteration
return s
a = add(1,5)
iterable=iter(a.get_next,3)
for i in iterable:
print(i)
#输出结果:
1
2
3.next()函数——获取迭代器的下一个元素
语法:next(iterable[,default])
例子:
1.循环推进迭代器元素,通过try…except抓捕异常
list=iter(["a","b","c","d","e"])
while 1:
try:
x=next(list)
print(x)
except StopIteration:
print("迭代器目标结束,执行抛异常代码块")
break
输出结果:
a
b
c
d
e
迭代器目标结束,执行抛异常代码块
4.any()函数——判断序列元素是否为False
语法:any(iterable)
元素除了0,空,False,都是True
5.sortde()函数——对可迭代对象进行排序
语法:Sorted(iterable[,cap[,key[,reverse] )
例子:
1.将列表进行排序,一句列表中元组的第二个下表值进行升序。
student = [("john","A",15),("Jane","B",12),("dave","B",10)]
new = sorted(student,key=lambda x:x[2],reverse=False)
print(new)
输出结果:
[('dave', 'B', 10), ('Jane', 'B', 12), ('john', 'A', 15)]
6.enumerate()函数——将可变利的数据对象组合成带有数据和数据下标的索引序列
语法:enumerata( sequence ,[ start = 0 ])
7.filter()函数——通过指定条件过滤序列并返回新序列对象
语法:filter(function,iterable)
例子:
1.定义列表,实现按照年龄进行筛选,得出年龄10到30岁的信息
def find(a):
age=int(a[1])
if age >10and age <30:
return True
else:
return False
list1= [("123",20),("456",20),("789",19),("256",10),("147",42)]
newlist=filter(find,list1)
print(list(newlist))
输出结果:
[('123', 20), ('456', 20), ('789', 19)]
8.zip()函数——将可迭代的对象打包成元组并返回有元组组成的对象
语法:zip([iterable,…])
9.map()函数——通过自定义函数实现对序列的元素映射操作并返回操作后的结果
语法:map(function ,iterable , …)
例子:
1.生成0-9的数字列表,然后通过map()实现对该列表每一个元素平方计算。
list1=[]
for i in range(10):
list1.append(i)
def func(x):
return x**2
resultlist = map(func,list1)
print(list(resultlist))
输出结果:
[0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
10.reverse()函数——对列表元素进行反向排序
语法:reverse()
例子:
1.随机生成数字列表,然后输出该列表,在经过反向排序后,再次输出列表。
import random
list1 = []
for i in range(10):
list1.append(random.randint(0,20))
print("原顺序:",list1)
print("反向顺序:",list(reversed(list1)))
输出结果:
原顺序: [20, 15, 18, 16, 17, 7, 3, 15, 2, 7]
反向顺序: [7, 2, 15, 3, 7, 17, 16, 18, 15, 20]