Python 中的常用内置函数(基础篇)

Python 中的常用内置函数

思维导图

(1)再谈生成器
  1. 生成器本质是迭代器
  2. 获取生成器的方法:生成器函数,生成器表达式,通过数据转化
  3. 生成器函数,函数内部有yield,执行这个函数获取的是生成器
  4. next(),可以触发生成器的执行,执行到下一个yield
  5. send(),触发生成器的执行,先给上一个yield传值,然后执行到下一个yield(不能用到开头和结尾)
  6. 特点:惰性机制,只能向前执行,节省内存
(2)再谈推导式
  1. 没有元组推导式,元组推导式其实是生成器表达式(结果 for 判断)
  2. 列表推导式 [结果 for 判断]
  3. 字典推导式{key,value for 判断}
  4. 集合推导式{key for 判断}
(3)常用内置函数(基础数据类型相关)
  1. 和数字相关
  1. bool() 转化为布尔型
  2. int() 转化为整形
  3. float() 转化为浮点型,小数
  4. complex() 转化成复数a+bi,a是实部,b是虚部
  5. bin() 将十进制转二进制0b
  6. oct() 将十进制转八进制0o
  7. hex() 将十进制转十六进制0x
  8. abs() 求绝对值
  9. divmod(a,b) 计算商和余数返回(商,余数)
  10. round() 四舍五入
  11. pow(a,b) a的b次幂入,如果再加个参数会取余
  12. sum(可迭代对象,数值) 求迭代对象加上数值的和,数值默认为0
  13. min(数值组) 求数值组最小值
  14. max(数值组)求数值组最大值
    2)和数据结构相关
  15. list() 转成列表
  16. map() 分而制之
  17. tuple() 转成元组
  18. reversed() 翻转,返回迭代器,想得到翻转后的列表需要将迭代器转化成列表
  19. slice(a,b,c) 切片
  20. str() 字符串转化
  21. bytes() 转化成字节
  22. bytearry() 返回一个新字节数组,这个数组的元素是可变的,并且每个元素的值范围是(0,256)
  23. memoryview() 查看bytes在内存中的情况
  24. ord() 输入字符,找字符对应的数字编码
  25. chr() 输入数字编码,找数字对应的字符
  26. ascii() 是ascii码中的就返回该值,不是就返回\u…
  27. repr() 原样输出字符串
  28. frozenset() 转换成不可变的列表
  29. len() 返回字符串,列表等长度
  30. enumerate() 以元组形式返回索引和元素(i,ele)
  31. all(可迭代) 用and连接所有元素,返回True或者False
  32. any(可迭代) 用or连接所有元素,返回True或者False
  33. repr() 返回一个对象的字符串形式字,意为原样输出字符串
#原样输出
print(r'')
  1. format() 格式化输出
#字符串操作
format(s,'^20')#将s(字符串)拉长到20,然后居中对齐
format(s,'>20')#将s(字符串)拉长到20,然后向右对齐
format(s,'<20')#将s(字符串)拉长到20,然后向左对齐
#数值操作
format(int,'b')#转化成二进制
format(int,'c')#转化成unicode字符
format(int,'d')#转化成十进制
format(int,'n')#转化成十进制
format(int)#转化成十进制
format(int,'o')#转化成八进制
format(int,'x')#转化成十六进制(小写字母)
format(int,'X')#转化成十六进制(大写字母)
#浮点数操作
format('数值类型','e')#科学计数法,默认保留6位小数
format('数值类型','0.2e')#科学计数法,保留2位小数(小写e)
format('数值类型','0.2E')#科学计数法,保留2位小数(大写E)
format('数值类型','f')#小数点计数法,默认保留6位小数
format('数值类型','0.2f')#小数点计数法,保留2位小数
format('数值类型','0.10f')#小数点计数法,保留10位小数
#另一种写法
'{:对应格式化操作},{:对应格式化操作}'.format('要格式话的数值1','要格式话的数值2')
#例如
'{:0.2f},{:0.2e}'.format(1,1)#第一个用小数点计数法,保留两位,第二个用科学计数法,保留2位小数(小写e)
以上操作返回的均为字符串形式(str)
  1. zip() 压缩列表,返回一个可迭代对象(生成器或迭代器)
lst1=['A','B','C']
lst2=['a','b','c']
lst3=['1','2','3']
ls=zip(lst1,lst2,lst3)#遵循水桶效应,按照最短的列表长度进行压缩
print(list(ls))#按每个列表的位置进行压缩,每项压缩成元组类型可迭代对象
#输出[('A', 'a', '1'), ('B', 'b', '2'), ('C', 'c', '3')]
(4)常用内置函数(迭代器生成器相关)
  1. range(a,b,s) 返回从a到b,每隔s个取一个的数列,不包含b
  2. next() 触发生成器的执行,执行到下一个yield,内部封装的就是__next__()
  3. iter() 获取迭代器,内部封装的就是__iter__()
(5)常用内置函数(作用域相关)
  1. globals() 函数以字典类型返回全部全局变量
  2. locals() 函数以字典类型返回当前位置全部局部变量
(6)常用内置函数(反射相关)
(7)常用内置函数(面向对象相关)
(8)常用内置函数(其他)
  1. input() :输入 print():输出
  2. hash():返回哈希值 id():返回id地址
    #哈希的目的是为了储存,尽量的不重复,(字典数据)特点是查找快,但是占内存
  3. open(文件路径 ,打开方式,编码) 文件操作相关
  4. import() 导入模块
  5. help() 帮助
  6. callable() 调用相关
  7. dir() 查看内置属性
  8. eval(‘表达式’) 只能执行一个字符串表达式或者简单的表达式,返回表达式值
c='1+2'
res=eval(c)#动态执行一个代码片段,侧重点在返回值上,返回执行后的结果
print(res)
#返回3
#eval(),可以还原字符串形式的列表和字典等数据类型如
Srt="{'a':1,'b':2}"
dic=eval(Str)
print(dic)
#输出{'a': 1, 'b': 2}
  1. exec(‘字符串代码块’) 可以执行相对复杂的代码段,没有返回值
#execute 执行
s='a=10'#支持input()
exec(s)
print(a)
#输出10
  1. compile(‘代码片段’ ‘存放代码的文件名’, eval或者exec或者single) ,先编译再执行
#如果第一个位置给了代码片段,第二个位置就不用写文件名
s="for i in range(10):print(i)"
c=compile(s,'','exec')#用什么模式,就用什么模式执行注意:交互模式下用single,但是用exec执行
exec(c)#执行编译后的代码片段
发布了66 篇原创文章 · 获赞 7 · 访问量 2389

猜你喜欢

转载自blog.csdn.net/qq_45894553/article/details/104713235