1.模块
模块是我们py文件运行后的名称空间
优点:
1. 可以把代码进行分类
2. 可以实现代码的重用
模块导入
1. 判断sys.modules中是否已经导入过该模块
2. 开辟一个内存空间
3. 在这个内存中执行该py文件
4. 给这个内存起一个名字,一般用的是py文件的名字。返回给导入方,如果你的py文件是启动文件,名字是__main__
程序的入口一般是:
if __name__ == "__main__":
pass
__name__ : 可以屏蔽掉一些测试代码
__name__ :
如果模块是启动模块, 值是 __name__
如果该模块是被导入模块, 值是 模块名
导入模块的时候会有三个动作
1.先去sys.modules中查看当前导入的模块是否被导入。
如果该模块已导入,则不会重复导入
2.开辟一段内存空间,在该空间内执行模块中的代码
3.给该空间一个名称,把该名称引入到模块中
2. import
import 模块名
模块名.属性/方法/类
每个模块都有自己对立的名称空间,每个都有一个golbal,相互并不影响
模块.属性 = 值. # 尽量不要出现此操作
3. from xxx import xxx
from 模块 import 函数/变量
当作自己的变量或者函数来使用
from xxx import * # 导入所有
导入的内容可以其别名 as