3. 包 package 的使用
3.1 包(package)的概念和结构
当一个项目中有很多个模块时,需要再进行组织。我们将功能类似的模块放到一起,形成了“包”。本质上,“包”就是一个必须有__init__.py 的文件夹。典型结构如下:
包下面可以包含“模块(module)”,也可以再包含“子包(subpackage)”。就像文件夹下面可以有文件,也可以有子文件夹一样。
上图中,a 是上层的包,下面有一个子包:aa。可以看到每个包里面都有__init__.py 文件。
3.2 pycharm 中创建包
在 pycharm 开发环境中创建包,非常简单。在要创建包的地方单击右键:New–>Pythonpackage 即可。pycharm 会自动帮助我们生成带有__init__.py 文件的包。
3.3 导入包操作
上一节中的包结构,我们需要导入 module_AA.py。方式如下:
- import a.aa.module_AA
在使用时,必须加完整名称来引用,比如:a.aa.module_AA.fun_AA(); - from a.aa import module_AA
在使用时,直接可以使用模块名。 比如:module_AA.fun_AA(); - from a.aa.module_AA import fun_AA
直接导入函数,在使用时,直接可以使用函数名。 比如:fun_AA()。
注意:
- from package import item 这种语法中,item 可以是包、模块,也可以是函数、类、变量;
- import item1.item2 这种语法中,item 必须是包或模块,不能是其他。