内置函数补充
基础数据类型相关
和数字相关:
数据类型:
bool 布尔
int 整型
float 浮点
complex 复数
只有在强转中会用
进制转换:
bin() 二进制转换 比如0b开头表示的是二进制数
oct() 八进制转换
hex() 十六进制转换
数学运算
abs() 计算绝对值 divmod() 返回(除,余) 括号内填的是要除的值后面是除几 返回的结果前面是商,后面是余数 round() 前面是小数,后面是精确到几位 精确小数 pow() 幂运算乘方 前面放数,后面放几次方 也可以放三个参数,最后一个是取余 sum() 求和 前面放迭代器,后面可以从什么数开始0 min() 计算最小值 min([1,2,3,4],key=abs) key里面放了什么函数条件就可以判断以什么条件最小 max() 计算最大值 同上 min max 可以接收散列的值,然后和可迭代的对象,key是一个函数名,判断的结果根据函数的返回值确定 default如果可迭代对象为空,设置默认的最小值
和数据结构相关:
序列:
列表和元祖:list tuple
reversed 反转,参数是序列,返回的是反序迭代器
slice 切片
字符串:
str() 强转
format() 前面数据,后面是在什么位置。
bytes() 转二进制 用于网络交互
bytearray()
memoryview() 只接收字节
ord() 字符按照unicode转换成数字
chr() 与上面相反
ascii() 将字符串变成编码
repr() print可将字符串按字符串格式打印出来
数据集合:
字典:
dict
集合:
set
frozenset() 不可变集合
相关内置函数
len() 计算长度 计算字典的时候,一个键值对是一个值
enumerate 给加序号
all 判断是否有布尔值是False 直接后面加可迭代对象
any 判断是否有布尔值是True 同上
zip() 拉锁 ,将两个列表值配对之类 可以多个列表值一起拉
filter()
map()
sorted() 排序 reverse=True 这样是反序 用key可以根据各种条件排序
匿名函数---lambda表达式:
一句话的python:
三元运算
各种推导式,生成器表达式
一句话写一个函数,lambda表达式
cal = lambda n:n*n #第一个是函数名,第二个是关键字如def 第三个参数,最后是返回值 条件 print(cal(10)) #调用方法与函数相同
可以传多个参数,也可以传了不用
匿名函数不管逻辑多复杂,只能写一行,且逻辑执行结束后的内容就是返回值
def multipliers(): return [lambda x:x*i for i in range(4)] print([m(2) for m in multipliers()]) #结果[6,6,6,6] def multipliers(): return (lambda x:x*i for i in range(4)) print([m(2) for m in multipliers()]) #结果[0,2,4,6]