python模块和包
模块
Import 模块名 [as 别名]
From 模块名 import 成员名 [as 别名]
模块文件的文件名就是它的模块名,模块的说明文档在模块开始处定义一个字符串即可。
为模块编写测试代码:期望的效果是,如果直接运行模块(此时模块内置的__name__变量值为__main__),则程序执行模块中的测试函数;如果是其他程序导入该模块(此时该模块内置的__name__变量值为改模块名),则程序不应该执行该模块内的测试函数。
If __name__ == ‘__main__’
使用import modelName导入模块的本质是将modelName.py中的全部代码加载到内存并执行,然后将整个模块内容赋值给模块同名的变量,该变量的类型是module,而在该模块中定义的所有程序单元都是该module对象的成员。
包
从物理上看,包就是一个文件夹,里面包含一个__init__.py文件,该文件夹可用于包含多个模块源文件。包的本质就是模块。导入包的本质就是执行该包下的__init__.py文件,然后将整个文件的内容赋值给与包同名的变量。