一.内置函数的思维导图
https://www.processon.com/mindmap/5b72676de4b0555b39e1d931
二.内置函数
1.作用域相关:
globals():返回全局作用域中的名字
locals(): 返回当前作用域中的名字
2.迭代器相关:
range(): 生成数据
next() : 迭代器向下执行一次,内部实际使用了__next__()方法返回迭代器的下一个项目
iter(): 获取迭代器,内部实际使用了__iter()方法来获取迭代器
3字符串类型代码执行
eval(): 执行字符串类型的代码,并返回最终结果
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
print(eval("2 + 2"))#4 n = 8 print(eval("2+n"))#10 def func(): print(666) eval("func()") #666
exec(): 执行字符串类型的代码
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
exec(""" for i in range(10): print(i)""") exec(""" def func(): print("我是周杰伦") func()""")
compile(): 将字符串类型的代码编译,代码对象能通过exec语句来执行或者eval进行求值
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
code1 = "for i in range(10):print(i)" c1 = compile(code1, "", mode="exec") exec(c1) code2 = "1+2+3" c2 = compile(code2, "", mode="eval") ret = eval(c2) print(ret) code3 = "name = input('请输入你的姓名:')" c3 = compile(code3, "", mode="single") exec(c3) print(name)
注意1:pycharm里的报错不一定是对的
注意2:有返回值的字符串形式的代码⽤eval(). 没有返回值的字符串形式的代码⽤exec(). ⼀般很少⽤到compile()
4.输入输出相关;
input(): 获取用户输入的内容
print():打印输出
5.内存相关:
hash() 获取到可哈希的对象的哈希值(int,bool,tuple)
id(): 获取到对象的内存地址
6.文件操作相关:
open(): 用于打开一个文件,创建一个文件句柄
7.模块相关:
__import__(): 用于动态加载类和函数
8.帮助:
help():函数用于查看函数和模块用途的详细说明
9.调用相关:
callable():用于检查一个对象是否可调用,如果返回True表示可调用,False表示不可调用
10.查看内置属性:
dir(): 查看对象的内置属性,方法,访问对象的__dir__()方法
11.基础的数据类型相关:
11.1数字相关:
bool():将给定的数据转换成bool值.如果不给值,返回False