- python中一个py文件就是一个模块
- 从封装的角度看:
函数是对功能的封装
模块可以通过函数对不同的功能进行封装,还可以通过全局变量对数据进行封装
1.模块的分类
- 系统模块(内置模块)
- 第三方库
- 自定义模块
2.模块的导入
a.方法一
import 模块名
import 模块名 as 新的模块名
#例子
import keyword
import random
import math
- 可以通过 ‘模块名.’ 的方式去调用这个模块中的所有全局变量
b.方法二
from 模块名 import 全局变量1,全局变量2,...
from 模块名 import * #把一个模块的所有内容全都导入到当前的命名空间也是可行的
from 模块名 import 全局变量1 as 新的全局变量名1,全局变量2 as 新的全局变量名2,...
- 导入指定函数中指定的全局变量,导入后直接使用全局变量
注意:重命名后,原名不能使用。
3.导入模块的原理:
- 当代吗执行到import或者from - import的时候,会自动将对应的模块中的代码全部执行一遍
- 同一个模块导入多次不会重复执行(放心大胆的导入)
4.阻止导入
将需要阻止被别的模块导入的代码放到以下if语句中
if __name__ =='__main__':
需要阻止导入的代码段
原理:每个模块都有属于自己的‘__ name__’属性,用来保存当前模块的模块名。默认情况下__ name__的值为文件的文件名,当我们直接运行该模块时,__ name__属性会自动变为'__ main__',其他模块时默认值。