一:函数回调
def a(fn=None): print("run1") if fn: fn() print("run 2") def b(): print("run again") a(b)
#得到返回值:
run1
run again
run 2
二:模块
1)什么是模块
模块是一系列功能的集合体,产生一个全局名称空间
2)模块执行的步骤
导入模块,会编译执行(import)
1.形成一个对应的pyc文件
2.产生该模块自己的全局名称空间
3.在使用该模块的全局名称空间中产生一个名字(导入的模块的模块名)
3)如何使用模块
#假设有一个模块a import a#导入整个模块 import a as b#起别名,原名称不能继续使用 from a import 名字 #导入a模块中的一个功能 from a import * #导入a模块中__all__列表中的所有元素,默认状态不包含_开头的功能 from a import 名字 as 名字 #给导入的功能起别名