https://www.processon.com/view/link/5b61b3f0e4b067df59f5adc1
min max filter map sorted 可以和lambda合作,有key
内置函数 55个 带key的 max min filter map sorted 思维导图上红色和黄色方法必须会用
匿名函数 lambda 参数,参数2 : 返回值表达式 和五个特殊的内置函数可以结合使用
1 # print() 2 # input() 3 # len() 4 # type() 5 # open() 6 # tuple() 7 # list() 8 # int() 9 # bool() 10 # set() 11 # dir() 12 # id() 13 # str() 14 15 16 # print(locals()) #返回本地作用域中的所有名字 17 # print(globals()) #返回全局作用域中的所有名字 18 # global 变量 19 # nonlocal 变量 20 21 #迭代器.__next__() 22 # next(迭代器) 23 # 迭代器 = iter(可迭代的) 24 # 迭代器 = 可迭代的.__iter__() 25 26 # range(10) 27 # range(1,11) 28 # print('__next__' in dir(range(1,11,2))) 29 30 # dir 查看一个变量拥有的方法 31 # print(dir([])) 32 # print(dir(1)) 33 34 # help 35 # help(str) 36 37 # 变量 38 # print(callable(print)) 39 # a = 1 40 # print(callable(a)) 41 # print(callable(globals)) 42 # def func():pass 43 # print(callable(func)) 44 45 import time 46 # t = __import__('time') 47 # print(t.time()) 48 49 # 某个方法属于某个数据类型的变量,就用.调用 50 # 如果某个方法不依赖于任何数据类型,就直接调用 —— 内置函数 和 自定义函数 51 52 # f = open('1.复习.py') 53 # print(f.writable()) 54 # print(f.readable()) 55 56 #id 57 #hash - 对于相同可hash数据的hash值在一次程序的执行过程中总是不变的 58 # - 字典的寻址方式 59 # print(hash(12345)) 60 # print(hash('hsgda不想你走,nklgkds')) 61 # print(hash(('1','aaa'))) 62 # print(hash([])) 63 64 # ret = input('提示 : ') 65 # print(ret) 66 67 # print('我们的祖国是花园',end='') #指定输出的结束符 68 # print('我们的祖国是花园',end='') 69 # print(1,2,3,4,5,sep='|') #指定输出多个值之间的分隔符 70 # f = open('file','w') 71 # print('aaaa',file=f) 72 # f.close() 73 74 # import time 75 # for i in range(0,101,2): 76 # time.sleep(0.1) 77 # char_num = i//2 78 # per_str = '\r%s%% : %s\n' % (i, '*' * char_num) \ 79 # if i == 100 else '\r%s%% : %s' % (i,'*'*char_num) 80 # print(per_str,end='', flush=True) 81 #progress Bar 82 83 # exec('print(123)') 84 # eval('print(123)') 85 # print(eval('1+2+3+4')) # 有返回值 86 # print(exec('1+2+3+4')) #没有返回值 87 # exec和eval都可以执行 字符串类型的代码 88 # eval有返回值 —— 有结果的简单计算 89 # exec没有返回值 —— 简单流程控制 90 # eval只能用在你明确知道你要执行的代码是什么 91 92 # code = '''for i in range(10): 93 # print(i*'*') 94 # ''' 95 # exec(code) 96 97 # code1 = 'for i in range(0,10): print (i)' 98 # compile1 = compile(code1,'','exec') 99 # exec(compile1) 100 101 # code2 = '1 + 2 + 3 + 4' 102 # compile2 = compile(code2,'','eval') 103 # print(eval(compile2)) 104 105 # code3 = 'name = input("please input your name:")' 106 # compile3 = compile(code3,'','single') 107 # exec(compile3) #执行时显示交互命令,提示输入 108 # print(name) 109 # name #执行后name变量有值 110 # "'pythoner'" 111 112 113 # 复数 —— complex 114 # 实数 : 有理数 115 # 无理数 116 # 虚数 :虚无缥缈的数 117 # 5 + 12j === 复合的数 === 复数 118 # 6 + 15j 119 120 # 浮点数(有限循环小数,无限循环小数) != 小数 :有限循环小数,无限循环小数,无限不循环小数 121 # 浮点数 122 #354.123 = 3.54123*10**2 = 35.4123 * 10 123 # f = 1.781326913750135970 124 # print(f) 125 126 # print(bin(10)) #二进制 127 # print(oct(10)) #八进制 128 # print(hex(10)) #十六进制 129 130 # print(abs(-5)) #绝对值 131 # print(abs(5)) 132 133 # print(divmod(7,2)) # div除法 mod取余 134 # print(divmod(9,5)) # 除余 135 136 # print(round(3.14159,3)) #四舍五入保留几位 137 # print(pow(2,3)) #pow幂运算 == 2**3 138 # print(pow(3,2)) 139 # print(pow(2,3,3)) #幂运算之后再取余 140 # print(pow(3,2,1)) 141 142 # ret = sum([1,2,3,4,5,6]) #sum里面是可迭代的 143 # print(ret) 144 145 # print(min([1,2,3,4])) 146 # print(min(1,2,3,4)) 147 # print(min(1,2,3,-4)) 148 # print(min(1,2,3,-4,key = abs)) 149 150 print(max([1,2,3,4])) 151 print(max(1,2,3,4)) 152 print(max(1,2,3,-4)) 153 print(max(1,2,3,-4,key = abs))
1 #!usr/bin/env python 2 # -*- coding:utf-8 -*- 3 # reversed() 4 # l = [1,2,3,4,5] 5 # # l.reverse() 6 # # print(l) 7 # l2 = reversed(l) #保留原列表,返回一个反向的迭代器 8 # print(l2) 9 10 # slice() 11 # l = (1,2,23,213,5612,342,43) 12 # sli = slice(1,5,2) 13 # print(l[sli]) 14 # print(l[1:5:2]) 15 16 # format 17 # print(format('test', '<20')) #左对齐 18 # print(format('test', '>40')) #右对齐 19 # print(format('test', '^40')) #^居中 20 21 # bytes 转换成bytes类型 22 # 我拿到的是gbk编码的,我想转成utf-8编码 23 # print(bytes('你好',encoding='GBK')) # unicode转换成GBK的bytes 24 # print(bytes('你好',encoding='GBK').decode('GBK')) 25 # print(bytes('你好',encoding='utf-8')) # unicode转换成utf-8的bytes 26 27 # 网络编程 只能传二进制 28 # 照片和视频也是以二进制存储 29 # html网页爬取到的也是编码 30 31 # bytearray 里面可更改 32 # b_array = bytearray('你好',encoding='utf-8') 33 # print(b_array) 34 # print(b_array[0]) 35 36 # l = 'ahfjskjlyhtgeoahwkvnadlnv' 37 # l2 = l[:10] 38 # print(l2) 39 40 # memoryview 41 # 切片 —— 字节类型 不占内存 42 # 字节 —— 字符串 占内存 43 44 # 编码 45 # ord 字符按照Unicode转数字 46 # chr 数字按照Unicode转字符 47 # print(ord('a')) 48 # print(ord('1')) 49 # print(chr(97)) 50 51 # ASCII码 52 # ascii() 只要是ascii码中的内容,就打印出来,不是就转换成\u 53 54 # repr 原形毕露 %r 就是调用repr 55 # print(repr('1')) 56 # print(repr(1)) 57 58 # frozenset 不可变得集合,可当作key 59 60 # all 接受可迭代的,全为真输出True 61 # print(all(['a','',123])) 62 # print(all(['a',123])) 63 # print(all([0,123])) 64 65 # any 接受可迭代的,有一个为真输出True 66 # print(any(['',True,0,[]])) 67 68 # zip方法,拉链方法 69 # l = [1,2,3] 70 # l2 = ['a','b','c'] 71 # print(zip(l,l2)) #内存地址,怀疑是迭代器 72 # for i in zip(l,l2): #用for试试 73 # print(i) 74 # 75 # # odd 76 # def is_odd(x): 77 # return x % 2 == 1 78 79 #filter 过滤方法 80 #filter(is_odd, [1, 4, 6, 7, 9, 12, 17]) #循环后面的可迭代的 81 #上面相当于[i for i in [1, 4, 6, 7, 9, 12, 17] if i % 2 == 1] 82 # ret =filter(is_odd, [1, 4, 6, 7, 9, 12, 17]) 83 # print(ret) #内存地址,迭代器 84 # for i in ret: 85 # print(i) 86 87 # def is_str(s): 88 # if type(s) == str: 89 # return True 90 91 # ret = filter(is_str,[1, 'hello', 6, 7, 9, 'world', 17]) 92 # print(ret) 93 # for i in ret: 94 # print(i) 95 96 # from math import sqrt 97 # def func(x): 98 # res = sqrt(x) 99 # if res % 1 ==0: 100 # return True 101 # ret = filter(func,range(1,101)) 102 103 # for i in ret: 104 # print(i) 105 106 # ret = map(abs,[1,-4,6,-8]) 107 # print(ret) 108 # for i in ret: 109 # print(i) 110 111 # filter 执行了filter之后的结果集合 <= 执行之前的个数 112 #filter只管筛选,不会改变原来的值 113 # map 执行前后元素个数不变 114 # 值可能发生改变 115 116 # sort 117 # l = [1,-4,6,5,-10] 118 # # l.sort(key = abs) # 在原列表的基础上进行排序,加了abs,按照绝对值排序 119 # # print(l) 120 121 # print(sorted(l,key=abs,reverse=True)) # 生成了一个新列表 不改变原列表 占内存 122 # print(l) 123 124 # l = [' ',[1,2],'hello world'] 125 # new_l = sorted(l,key=len) 126 # print(new_l) 127 # print(l)
1 #!usr/bin/env python 2 # -*- coding:utf-8 -*- 3 # lambda匿名函数 4 # min max filter map sorted 可以和lambda合作 5 #普通函数 6 # def calc(n): 7 # return n*n 8 # print(calc(10)) 9 # 10 # #lambda匿名函数 11 # calc = lambda n:n*n 12 # print(calc(10)) 13 14 # def add(x,y): 15 # return x+y 16 #改写为Lambda 17 # add = lambda x,y:x+y 18 # print(add(1,2)) 19 20 # dic={'k1':10,'k2':100,'k3':30} 21 # def func(key): 22 # return dic[key] 23 # print(max(dic,key=func)) #根据返回值判断最大值,返回值最大的那个参数是结果 24 # print(max(dic,key=lambda key:dic[key])) 25 26 # max([1,2,3,4,5,-6,-7],key=abs) 27 28 # ret = map(abs,[-1,2,-3,4]) 29 # for i in ret: 30 # print(i) 31 32 # def func(x): 33 # return x**2 34 # ret = map(func,[-1,2,-3,4]) 35 # for i in ret: 36 # print(i) 37 # 38 # ret = map(lambda x:x**2,[-1,2,-3,4]) 39 40 41 # def func(x): 42 # return x>10 43 # 44 # res = filter(func,[5,8,11,9,15]) 45 # for i in res: 46 # print(i) 47 48 49 # min max filter map sorted —— lambda 50 51 # d = lambda p:p*2 52 # t = lambda p:p*3 53 # x = 2 54 # x = d(x) #x = 4 55 # x = t(x) #x = 12 56 # x = d(x) #x = 24 57 # print(x) 58 59 # ret = zip((('a'),('b')),(('c'),('d'))) 60 # ret = map(lambda t:{t[0]:t[1]},ret) 61 # print(list(ret)) 62 63 #现有两元组(('a'),('b')),(('c'),('d')), 64 # 请使用python中匿名函数生成列表[{'a':'c'},{'b':'d'}] 65 66 # max min sorted filter map 67 # 匿名函数 == 内置函数 68 # zip 69 # ret = zip((('a'),('b')),(('c'),('d'))) 70 # res = map(lambda tup:{tup[0]:tup[1]},ret) 71 # print(list(res)) 72 73 # def multipliers(): 74 # return [lambda x:i*x for i in range(4)] 75 # print([m(2) for m in multipliers()])
转载于:https://www.cnblogs.com/dzc18/p/9403983.html
