Looking For Anything Specific?

python函数知识五 推导式和内置函数一(了解)

17.推导式: 推导式:将for循环多行变成一行 list推导式:[] #普通模式 print([i for i in range(20)]) #循环模式 #[变量 for i in range(20)] print([i+1 for i in range(10)]) #筛选模式 #[变量(加工后) for i in range(20)] print([i for i in range(20) if i % 2 == 1]) 生成器表达器:() #普通模式 print((i for i in range(20))) #结果:是内存地址 at 0x0000023EBFA0F048> g = (i for i in range(20)) print(next(g)) print(next(g)) #筛选模式 g = (i for i in range(50) if i %2 ==1) for i in g: print(i) 字典/集合推导式:{} #{} print({for i in range(10)})#集合 print({i:i+1 for i in range(10)})#字典,键值对 #筛选模式 print({for i in range(10) if i % 2 == 0}) print({i:i+1 for i in range(10) if i % 2 == 0}) list: [变量(加工后的变量) for 循环] [变量(加工后的变量) for 循环 加工条件] 生成器推导式: (变量(加工后的变量 ) for 循环) (变量(加工后的变量) for 循环 加工条件) 字典推导式: {键:值 for循环 加工条件} 集合推导式: {变量 for 循环 加工条件} 18.内置函数一(了解): eval():将字符串中的数按运算符运算 s = '3+5' print(eval(s)) s = '3*5' print(eval(s)) def func(): print(1) return func() exec(): s1 = """ def func(): print(123) func """ print(exec(s))#牛逼,工作中不能使用 hash():获取哈希值 print(hash("lajdsf")) help():打印源码 print(help(list)) help(list) callable():判断是否可调用,返回bool def func(): pass print(callable(func)) complex():复数 print(complex(-1)) oct(): 十进制转八进制 hex():十进制转十六进制 print(oct(15)) print(hex(15)) divmod(): 打印商和余数 print(divmod(5,2)) round(): 四舍五入,分奇数偶数,可指定保留小数位 print(2.5)#偶数0~0.5舍,0.51~0.99入 print(5.5)#奇数0~0.49舍,0.5~0.99入 print(5.231,2)#指定保留两位小数。指定保留小数后都是4舍5入 pow():求幂 print(pow(2,3)) print(pow(2,4,3))#先求幂,在除第三个数取余 bytes(): s = 'alex' print(bytes(s,encoding = 'utf-8')) ord(): chr() print(ord("A"))#字母和数字转aci码 print(ord('你'))#汉字是当前使用的编码 print(chr(20320)) repr():-->r防转义#\u 3000代表一个空格 all():判断元素是否都为真 any():判断元素是否有真 lst = [1,2,6,0,2] print(all(lst))#False print(any(lst))#true globals():查看全局空间存在的变量 locals():查看当前空间存在的变量 name = 1 def func(): a = 123 print(locals()) return print(globals)