模块介绍
1. 定义
- 模块:用来从逻辑上组织python代码(变量,函数,类,逻辑:实现一个功能),本质就是.py结尾的python文件(文件名:test.py,对应的模块名:test)
- 包:用来从逻辑上组织模块的,本质就是一个目录(必须带有一个init.py文件)
2.导入方法
- import module_name:引用脚本的函数用module_name.hanshu()的方法;
- import module1_name,module2_name:导入多个脚本模块;
- from module_alex import *:相当于导入module_alex里的所有模块
- from module_alex import hanshu_alex as hanshu:引入module_alex里的hanshu)alex()并重新取名为hanshu();
用from方法引入时,可以直接使用方法;
3. import与from...import....本质
- import 本质把模块的所有代码解释了一遍,赋值给module_name;
- from module_alex import name本质就是把name这个代码复制一份到当前脚本;
import test相当于test='test.py all code'
- 导入模块的过程:找文件,找文件所在的路径,找sys.path;
- 要引入当前目录下的其他模块,首先使用os.path.abspath(file)获得当前模块的绝对路径,然后两次使用os.path.dirname(file)获得父父级目录,将此目录添加到sys.path中去。例如:sys.path.append(os.path.dirname(os.path.dirname(os.path.abspath(file))));
- 导入包的本质就是执行该包下面的init.py