1、内置函数
1 print(all([1,2,3,0])) #判断可迭代对象里面是否都为真:非零即真非空即真原则 2 print(any([1,2,3,0])) #判断可迭代对象里面是否有一个为真:非零即真非空即真原则 3 print(bin(100)) #十进制转二进制 4 print(chr(65)) #打印数字对应的ascii 5 print(ord('A')) #打印ascii对应的数字 6 print(dir('A')) #打印所传对象可调用的所有方法 7 print(eval("{'a':2,'b':3}")) #执行python代码,只是简单执行,定义数据类型和运算 (单词有评估的意思)#可以将字符串转换为字典、数组、元祖#https://www.cnblogs.com/liu-shuai/p/6098246.html 8 print(exec('')) #?执行python代码,只是简单执行,定义数据类型和运算 9 a = 1 10 exec('a = a+1') 11 print(a) # 输出:2 12 # zip()同时循环两个list,或者多个list,当list个数不匹配的时候,以少的数量为准 13 ids = [1,2,3] 14 names = ['xiaohei','xiaobai','xiaohuang'] 15 for i,n in zip(ids,names): 16 print(i,n) 17 18 # sorted升序排列 19 ids = [1,2,3,-3] 20 print(sorted(ids)) #升序排列 21 print(sorted(ids,reverse=True)) #降序排列 22 print(round(4.3333,2)) #保留几位小数,如果四舍五入后,最后一位是0的话,不显示
2、map和filter 循环调用函数
map 循环调用函数,将每次函数处理的结果放到map里面,返回map对象,可以强制转换成list查看,简化代码
def func(a): if a%2 == 0: return a else: return False num = [x for x in range(11)] res = map(func,num) print(res) #<map object at 0x0000000000C5AA90> print(list(res)) #[0, False, 2, False, 4, False, 6, False, 8, False, 10]
filter 循环调用函数,只返回结果为真的,可以强制转换成list查看,简化代码
1 def func(a): 2 if a%2 == 0: 3 return a 4 else: 5 return False 6 num = [x for x in range(11)] 7 res = filter(func,num) 8 print(list(res)) #[2, 4, 6, 8, 10]
3、函数即变量
函数名可以替换
1 def say(name): 2 print(name) 3 cm = say 4 cm('ccccmmmm') #ccccmmmm
利用字典,调取函数:择不同分支,调取不同函数,函数参数个数一致时(0个或者1个。。),可以用下面的例子
#需求:根据输入的数字,选择调用不同的函数
1 def add(): 2 print("添加商品") 3 def view(): 4 print("查看商品") 5 def delete(): 6 print("删除商品") 7 8 choice = input('请输入选择 1、2、3、').strip() 9 10 menu = { 11 '1':add, 12 '2':view, 13 '3':delete 14 } 15 if choice in menu: 16 menu[choice]() #适合用于函数没有参数,或者参数是一样的情况下。 17 else: 18 print('输入错误')