1、enumerate返回针对序列类型的可迭代对象的枚举对象。
2、eval取出字符串中的内容。
将str中有效的表达式返回计算结果。
3、exec运行编译后的字符串。
4、filter过滤器筛选出想要的对象。
实例
list1 = [1,'ok',3,'kkk'] s = enumerate(list1) print(s)#<enumerate object at 0x000002D2CC666DB8>生成一个枚举对象 for i in s: print(i) #(0, 1) # (1, 'ok') # (2, 3) # (3, 'kkk') data = list(s) print(data)#[(0, 1), (1, 'ok'), (2, 3), (3, 'kkk')] a = '1+2+3' print(a)#1+2+3 print(eval(a))#6 b = 'we s s' # print(eval(b))#报错,必须是有效表达式 c = 12 d = 24 e = 'sum = c+d' print(e)#sum = c+d exec(e) print(sum)#36 def func(x): return x>5 list2= [i for i in range(10)] print(func(6))#True f_list = filter(func,list2) print(f_list)#<filter object at 0x000001F8E1DFACC8>返回一个过滤器对象 list3 = list(f_list) print(list3)#[6, 7, 8, 9] def func1(y): if y>5: return y*2 list4= [i for i in range(10)] f_list = filter(func1,list4) list5 = list(f_list) print(list5)#[6, 7, 8, 9] #只进行筛选,筛选出来是什么,返回的就是是什么,不会改变值 def func2(k): if k<5: return k#返回的是一个bool值,不会返回0 list6= [i for i in range(10)] f_list = filter(func2,list6) list7 = list(f_list) print(list7)#[1, 2, 3, 4] def demo(x): return x*10 list8 = [i for i in range(7)] s = map(demo,list8)#数据必须是可迭代数据 print(s)#<map object at 0x0000029B113BA288>生成的是一个map对象,要查看里面的内容要转类型 list9 = list(s) print(list9)#[0, 10, 20, 30, 40, 50, 60] list10 = ['ok','yes','no'] list11 = ['可以','是的','不'] a = zip(list10,list11) print(a)#<zip object at 0x000001A4EE89A688>生成一个对象 print(dict(a))#{'ok': '可以', 'yes': '是的', 'no': '不'}也可以直接进行操作 #数据被操作一次后就不能再进行操作 print(list(a))#[] # list12 = list(a) # print(list12)#[('ok', '可以'), ('yes', '是的'), ('no', '不')] # print(dict(list12))#{'ok': '可以', 'yes': '是的', 'no': '不'} #可以直接转换成字典,有对象就配对,没有就不配
以上就是python高级内置函数的介绍,希望对大家有所帮助。更多Python高级指路:
本文教程操作环境:windows7系统、Python 3.9.1,DELL G3电脑。