python函数知识六 内置函数二、匿名函数与内置函数三(重要)
程序员文章站
2022-06-15 13:26:06
19.内置函数二 1. abs():绝对值 2. enumerate("可迭代对象","序号起始值"):枚举获取键和值,起始值默认为0 3. max():求最大值,放可迭代对象 4. min():最小值 5. sum(list,tuple,set):求和,可指定起始值 6. range():范围 7 ......
19.内置函数二
- abs():绝对值
lst = [1,2,-3,1,2,-5] print([abs(i) for i in lst])
- enumerate("可迭代对象","序号起始值"):枚举获取键和值,起始值默认为0
lst [1,2,-3,1,2,-5] print([i for i in enumerate(lst)]) print(i for i in enumerate(lst,10))
- max():求最大值,放可迭代对象
- min():最小值
- sum(list,tuple,set):求和,可指定起始值
- range():范围
- print(sep = ":",end="\t"):sep-->多个元素的连接符,end-->默认为\n
print(123,file = open('1.txt','w'))#输出到文件内
- list:
print(list('alex'))#结果是迭代出来的
- dict:
print(dict(key = 1, a = 'alex'))#结果{'key':1,'a':'alex'} #面试:定义 print(dic(((1,2),(2,3),(3,4)))) print(dict([i for i in enumerate(range(20),1)]))
- zip():拉链,按照最少的合并,按索引合并,字典是按键合并,与值无关
lst1 = [1,2,3,4,5] lst2 = ['a','b','c','d','f'] lst3 = ["alex",'ewr',"你好",""] lst4 = {'k1':1,'k2':2} print(list(zip(lst1,lst2))) print(dict(list(zip(lst1,lst2))))#面试 print(dict(zip(lst1,lst2))) print(list(zip(lst1,lst2,lst3))) print(list(zip(lst4,lst1)))
- dit():查看当前函数的方法
print(dir(list))
g = range(0,10) from collections import iterable,iterator print(isinstance(g,iterable))#判断是否是可迭代对象 print(isinstance(g,iterator))#判断是否是迭代器
20.匿名函数与内置函数三(重要)
重要的内置函数和匿名函数
1.匿名函数:
lambda -->定义函数(一行函数),x,y 形参 x+y 返回值,只能返回一个数据类型。形参可以不写,返回值必须写
匿名函数的名字叫做lambda
f = lambda x, y:x+y print(f(1,2)) f = lambda x, y:(x,y) print(f(1,2)) print(f.__name__())#函数名就叫做lambda print(lambda x:x)#结果:内存地址 print((lambda x:x)(2))#调用函数 #面试1 print([lambda i:i*i for i in range(10)])#返回十次匿名函数的内存地址 lst = [lambda i:i*i for i in range(10)] print(lst[2](2)) #解构 lst = [] for i in range(10): def func(i): return i*i lst.append(func) print(lst[2](3))#结果 9 #2.不写形参 lst = [lambda :i*i for i in range(10)] print(lst[2]()) #解构 lst = [] for i in range(10): def func(): return i*i lst.append(func) print(lst[2]())#结果 81 # lst = (lambda i:i*i for i in range(5))#报错 print((lambda i:i*i for i in range(5)))#生成器的地址 #
2.内置函数三(重要)
- format()
print(format(13,">20"))#右对齐 print(format(13,"<20"))#左对齐 print(format(13,"^20"))#居中 print(format(13,"b"))#二进制 #进制,8位显示 print(format(13,"08b"))#二进制 print(format(13,"08d"))#十进制 print(format(13,"08o"))#八进制 print(format(13,"08x"))#十六进制
- filter("函数","可迭代对象"):过滤,写函数的时候,可指定过滤条件
lst = [1,2,3,4,5,6] def func(s): return s>3 print(filter(func,lst))#返回对象内存地址 print(list(filter(func,lst)))#返回lst中>3的值 func就是定义的条件,lst是迭代对象 #用lambda print(list(filter(lambda x:x>3,lst)))
- map():对象映射,对可迭代对象中的每个元素进行加工
print(map(lambda x:x+1,[1,2,3,4,8,5]))#返回地址 print(list(map(lambda x:x+1,[1,2,3,5,4,6])))#
- reversed():反转,原数据没变
- sorted():排序,key,指定排序规则--不用list转换
s1 = "alex" print(reversed(s1))#结果为内存地址 print(list(reversed(s1)))#结果:['x', 'e', 'l', 'a'] lst = [1,2,3,4,5] lst.reverse() print(s1) lst1 = list(reversed(lst)) print(lst) print(lst1) lst = [1,2,36,4,8] print(sorted(lst)) print(lst)#原数据不变 #降序 print(sorted(lst,reverse=treu)) #key dic = {'k1':1,'k2':3,'k3':56} print(sorted(dic,key=lambda x:dic[x],reverse=true)) #key指定查找最大值时的规则 print(max([1,2,-33,5],key=abs))
- reduce():累计算,面试
from functools import reduce print(reduce(lambda x,y:x+y,[1,2,3]))
下一篇: luogu4570 元素
推荐阅读
-
基于python内置函数与匿名函数详解
-
Python——day14 三目运算、推导式、递归、匿名、内置函数
-
Python 函数递归-三元表达式-列表生成式-字典生成式-匿名函数-内置函数 8.2笔记
-
python函数知识六 内置函数二、匿名函数与内置函数三(重要)
-
Python学习笔记(三)【变量与常量、数字类型之间的转换、内置函数、math模块的使用】
-
基于python内置函数与匿名函数详解
-
Python——day14 三目运算、推导式、递归、匿名、内置函数
-
Python 函数递归-三元表达式-列表生成式-字典生成式-匿名函数-内置函数 8.2笔记
-
学习python的第十七天(二分法,有名函数,匿名函数,内置函数)
-
python函数知识六 内置函数二、匿名函数与内置函数三(重要)