代码模块化是进行大型项目的必经之路,通过将代码进行模块化、解耦将功能进行模块化。在C语言中通过include
语法,将不同模块的头文件进行重复利用;在javascript中使用module export||require
语法实现模块的引入。同样在python中也可以引入自定义模块,简化代码。
1.定义模块
模块文件实际上就是一个python
脚本,脚本中可以向外部提供变量、函数、类等数据结构
1 | ## 模块文件readHomolog.py |
2.组织模块
当一个工程之中包含有多个模块,并且模块之间具有一定的依赖关系;我们可以将这些模块组织起来形成一个packages。一个packages对应了一个工程所用到的模块,进而在python packa仓库发布。
- module1.py
- modlue2.py
packages 目录中需要包含 init.py文件,说明当前目录为packages
1 | ## 目录结构 |
3.引入模块
3.1直接引入
当python可执行脚本与模块文件同属于一个父目录时,可以直接引入
例如run.py
脚本与模块文件readHomolog.py
同属于一个父目录,所以在run.py
中直接import 即可。这里引入的是模块文件中自定义的函数
from readHomolog import readHomologous
1 | homolog |
3.2sys模块引入
使用sys
模块,指定自定义模块所在目录,python能够自动进行搜索
1 | #在run.py中 |
3.3通过pth文件进行配置
在python的安装路径\Python35\Lib\site-packages
中配置对应的pth文件,
pth文件格式
conda中python对应的路径为~/anaconda3/lib/python3.6/site-packages
module_模块名.pth
在脚本中直接引用即可
1 | from readHomolog import readHomologous |