目录
3 Python中的模块
1、python中的包
1. 引入包
1.1 包就是一个目录
1.2 把多个py文件放到同一个文件夹下
1.3 使用import 文件夹.模块 的方式导入
python3可以导入包,python2不行。
1.4 使用from 文件夹 import 模块 的方式导入
python3可以导入包,python2不行。
1.5 在包的文件夹下创建__init__.py文件。
在python2中:有一个目录,并且目录下有一个__init__.py的文件。才叫包。
虽然文件内容没有,但是python2可以用了
有__init__.py文件在python3中没有有错。以后我们都在包的目录下新建一个init文件。
1.6 在__init__.py文件中写入
from . import 模块1
from . import 模块2
那么可以使用import 文件夹 导入
1.7 也可以使用from 文件夹 import 模块 的方式导入
总结:
包将有联系的模块组织在一起,即放到同一个文件夹下,并且在这个文件夹创建一个名字为__init__.py 文件,那么这个文件夹就称之为包
有效避免模块名称冲突问题,让应用组织结构更加清晰
2. __init__.py文件有什么用
__init__.py 控制着包的导入行为
2.1 __init__.py为空
仅仅是把这个包导入,不会导入包中的模块
2.2 (了解)可以在__init__.py文件中编写内容
可以在这个文件中编写语句,当导入时,这些语句就会被执行
__init__.py文件
4 模块的发布
1.mymodule目录结构体如下:
.
├── setup.py
├── suba
│ ├── aa.py
│ ├── bb.py
│ └── __init__.py
└── subb
├── cc.py
├── dd.py
└── __init__.py
2.编辑setup.py文件
py_modules需指明所需包含的py文件
from distutils.core import setup setup(name="压缩包的名字", version="1.0", description="描述", author="作者", py_modules=['suba.aa', 'suba.bb', 'subb.cc', 'subb.dd']) |
3.构建模块
python setup.py build
4.生成发布压缩包
python setup.py sdist
5 模块安装、使用
1.安装的方式
1、找到模块的压缩包(拷贝到其他地方)
2、解压
3、进入文件夹
4、执行命令python setup.py install
注意:如果在install的时候,执行目录安装,可以使用python setup.py install --prefix=安装路径
conda create -n py2 python=2.7
2.模块的引入
在程序中,使用from import 即可完成对安装的模块使用
from 模块名 import 模块名或者*