16:内置函数和匿名函数
1、reversed :保留原列表,返回一个反向的迭代器
2、slice构建一个方法:
1到5步长为2
l = (1,2,23,213,5612,342,43) sli = slice(1,5,2) print(l[sli]) print(l[1:5:2])
3、bytes :转化成bytes类型
比如:
print(bytes('你好',encoding='utf-8')) #unicode转化成utf-8 print(bytes('你好',encoding='gbk')) #unicode 转化成gbk
关于编码方式:
1、网络编程,只能传二进制
2、照片和视频也是以二进制
3、html网页爬取到的也是二进制
4、bytearray:
ret = bytearray('alex',encoding='utf-8') print(id(ret)) print(ret[0]) ret[0] = 65 print(ret) print(id(ret))
将字符串转化成bytes,可以对某位的字符用修改ASCII码的方式进行修改(用bytearray将编码可以对其中某一个片段进行修改)
5、 ord :将字符串以ascill码显示
chr :将ascill码转化成字符串
print(ord('好')) print(ord('1')) print(chr(97))
执行结果如下
6、repr:将变量以其原有的属性显示:字符串就是字符串,整形(或者浮点型)就是整形显示(输入什么形式就以什么形式存在)。
7、all :所有的布尔值是True则返回True,如果有一个布尔值是False则是False。
print(all(['a','',123])) print(all(['a',123])) print(all([0,123]))
8、any:有一个布尔值为真就为真
print(any(['',True,0,[]]))
9、zip :拉链。。。。。功能 (就像裤裆的拉链把两个对应的内容组合到一起……)。
l1=[1,2,3,4,5] l2=['a','b','c','d','e']
执行结果:
10、filter :
1)、前一个是定义好的函数,将后一个可迭代对象进行遍历,放入前面的条件中,如果符合条件,那就添加到变量中,这个变量是迭代器。
2)、起到筛选的作用,不会改变原来的值,执行之后的结果集合的数量小于执行前结果集合元素的数量。
def is_odd(x): #定义函数 return x % 2 == 1 ret = filter(is_odd, [1,2,3,4,5,6,7,8,9,10]) #ret是迭代器哎亲 for i in ret: print(i)
11、map :根据条件,将可迭代对象中的元素放入函数中执行,会改变原来的值,但是执行前后的数量不变,返回的是一个迭代器。
ret = map(abs,[1,-4,6,-8]) print(ret) for i in ret: print(i)
谢谢观看!!!!!!