python 内置函数
内置函数
共有68个
带key的内置函数
- max min filter map sorted
作用域相关
基于字典的形式获取局部变量和全局变量
- globals()——获取全局变量的字典
- locals()——获取执行本方法所在命名空间内的局部变量的字典
map 与 filter
- map 执行前后元素个数不变,值可能发生改变
- filter 执行了filter之后的结果集合 <= 执行之前的个数, filter只管筛选,不会改变原来的值
- map 函数示例
name=['alex','wupeiqi','yuanhao','nezha'] ret = map(lambda item:item+'_sb',name) print(list(ret))
- filter函数示例
num = [1,3,5,6,7,8] ret = filter(lambda x:x%2 == 0,num) ret = filter(lambda x:True if x%2 == 0 else False,num) print(list(ret))
sorted
对List、Dict进行排序,Python提供了两个方法
对给定的List L进行排序,
方法1.用List的成员函数sort进行排序,在本地进行排序,不返回副本
方法2.用built-in函数sorted进行排序(从2.4开始),返回副本,原始输入不变
参数说明:
iterable:是可迭代类型;
key:传入一个函数名,函数的参数是可迭代类型中的每一项,根据函数的返回值大小排序;
reverse:排序规则. reverse = True 降序 或者 reverse = False 升序,有默认值。
返回值:有序列表
iterable:是可迭代类型;
key:传入一个函数名,函数的参数是可迭代类型中的每一项,根据函数的返回值大小排序;
reverse:排序规则. reverse = True 降序 或者 reverse = False 升序,有默认值。
返回值:有序列表
例:列表按照其中每一个值的绝对值排序
列表按照绝对值排序
coding
l1 = [1,3,5,-2,-4,-6] l2 = sorted(l1,key=abs) print(l1) print(l2)
zip
现有两个元组(('a'),('b')),(('c'),('d')),请使用python中匿名函数生成列表[{'a':'c'},{'b':'d'}]
#答案一 test = lambda t1,t2 :[{i:j} for i,j in zip(t1,t2)] print(test(t1,t2)) #答案二 print(list(map(lambda t:{t[0]:t[1]},zip(t1,t2)))) #还可以这样写 print([{i:j} for i,j in zip(t1,t2)])
现在有一个字符串str1 = 'abc喵喵羽飞20210110作业',按指定长度分割到一个列表。
str1 = 'abc喵喵羽飞20210110作业' l1 = [0,3,11,19] #字符串起始位置 l2 = [3,8,8,4] #字符串长度 list1 = [ str1.encode('gbk')[i:i+j].decode('gbk') for i,j in zip(l1,l2) ] print(list1)