python<内置函数><不定长参数><三目运算符>简单汇总
python中三目运算符: 如果有这样一个判断,值大于5返回True,否则返回False,代码如何写? a = 3 if a>5: print(True) else: print(False) 有更简便的方法吗?三目运算符写法如下: a = 3 True if a>5 else False 即满足条件的写在左边,不满足的写在右边 函数基础之不定长参数:在函数调用时,不清楚自己要传几个参数时,可以使用。具体如下: *args用法 def func(*args): print(args) func() #此时可以传多个参数,数字、字符串、列表、元组、集合。 **kwargs用法 def func(**kwargs): print(kwargs) func(a=1,b=2,c=3,d=4) #字典键值对传法 函数基础之常见内置函数: dir(__builtins__)#展示python中已经存在的内置函数。 print(dir(__builtins__)) 常用的如下: len()求长度 li = [1,4,3,2,5,6] print(len(li)) max()求最大值 print(max(li)) min()求最小值 print(min(li)) sum()求和 print(sum(li)) sorted()排序 print(sorted(li)) reversed()反向排序 print(reversed(li)) #注意不可以这样写,这个地方有点不同,这样写的话输出的是一个对象。 print(list(reversed(li))) #应该这样写 注意内置函数和方法不一样,其实可以发现使用列表方法上面的正向排序、反向排序是这样写的: 列表永久性排序方法:sort() li = [1,4,3,2,5,6] li.sort() print(li) 结果:[1,2,3,4,5,6] 列表反向排序:sorted(reversed=True) li = [1,4,3,2,5,6] li.sort(reverse=True) print(li) 结果:[6,5,4,3,2,1] 进制转换函数: bin() 转换为二进制 oct() 转换为八进制 hex() 转换为十六进制 ord() 转换为ASCII码 chr() ASCII码转字符 python高级内置函数: enumerate 返回一个可以枚举的对象 li = ["a","b","c","d"] enumerate(li) print(enumerate(li)) #输出结果为对象,用list接收如下: print(list(enumerate(li))) #输出结果为:[(0,"a"),(1,"b"),(2,"c"),(3,"d")] 必须是列表吗?没有这种说法也可以是字典等,字典如下: print(dict(enumerate(li))) #输出结果为:{0:"a",1:"b",2:"c",3:"d"} eval 取出字符串中的内容,用来执行一个字符串表达式,并返回表达式的值。 a = "1+2+3+4" eval(a) print(eval(a)) #结果为10 exec不作介绍 filter():过滤器接收一个函数 f 和一个list,这个函数 f 的作用是对每个元素进行判断,返回 True或 False, filter()根据判断结果自动过滤掉不符合条件的元素,返回由符合条件元素组成的新list。 li = [1,2,3,15,16,20] def func(x): return x>10 filter(func,li) print(list(filter(func,li))) #结果为[15, 16, 20] map():接收一个函数 f 和一个 list,并通过把函数 f 依次作用在 list 的每个元素上,得到一个新的 list 并返回 li = [1,2,3,5] def func(n): return n*10 map(func,li) print(list(map(func,li))) #结果为[10,20,30,50] zip():将两个列表组合。。。。 li1 = [1,2,3,4,5] li2 = ["a","b","c","d","e"] zip(li1,li2) dict(zip(li1,li2)) #用字典接收 print(dict(zip(li1,li2))) #结果为:{1:"a",2:"b",3:"c",4:"d",5:"e"}