简介 把模块打包成package,可以进行分发和安装。
packaged的打包和安装
- 一、package层次架构
- 二、 package的打包和安装
- 1. 创建setup.py
- 2. 打包package
- 3. 安装package
一、package层次架构
其中mypackage为进行打包的文件夹,文件夹下包含多个脚本:
- init.py:初始化脚本,必须存在,可以空着
- a.py:脚本文件
- b.py:脚本文件
二、 package的打包和安装
1. 创建setup.py
在mypackage的同一目录下创建setup.py脚本,用于打包mypackage成安装文件,配置如下:
setup.py
from setuptools import (setup, find_packages)
setup(
name="mypackage", # 包名
version="0.1.0", # 版本
packages=find_packages() # 需要包含的子包列表
)
以上列出了必写的三个变量:
- name: 包的名称
- version:版本号
- packages:用于打包mypackage目录下的脚本,如:a.py, b.py
另外还可添加变量等:
- author:作者
- url:项目地址
- email:邮箱
另外setuptools模块是python2.7.9版本后默认安装的。
2. 打包package
打包有两种格式:
(1) 打包成.whl格式
python setpy.py bdist_wheel
(2) 打包成.tar.gz格式
python setpy.py sdist
执行完上面其中一种命令后,会生成几个文件,以打包.whl格式为例:
其中,在dist文件夹下会生成一个.whl文件,以包的名称和版本号进行命名。
如果想推送自己的包到PyPI,则需先注册PyPI账号然后执行python3 setup.py upload来上传
3. 安装package
使用pip直接安装即可
pip install dist/mypackage-0.1.0-py3-none-any.whl
后面就直接使用mypackage下的a.py和b.py的函数了,如;
import mypackage.a as a
import mypackage.b as b