原文链接:python创建自己的package
python创建自己的package
package介绍
Python 包是提供一些附加功能的 Python 模块的目录。
包允许您将代码组织到单独的文件和文件夹中,并在需要的地方导入它们,使您的代码保持简洁
模块结构
1 | \-packagedemo |
说明
- package项目和setup/LICIENSE/README.MD同级
- packagename项目下的文件可以是任意的,但是每一个包含源码的目录下需要有__init__.py
- init.py可以写入该文件夹下的同级源码文件名称 all=[‘1’,’2’]
- 项目内import要从packagename开始
setup编写
1 | from setuptools import Extension, dist, find_packages, setup |
项目打包
- 检查setup是否正确
1
python setup.py check
- 创建gz的安装包会在setup.py同级下生成dist文件夹,里面包括了packagename-X.X.X.tar.gz
1
python setup.py sdist
可用通过pip安装
3.创建wheel安装包 需要安装wheel包dist下生成packagename-X.X.X.py3-none-any.whl1
python setup.py sdist bdist_wheel
项目发布
使用twine上传
1 | python -m twine upload --repository pypi dist/* |
输入pypi的账户和密码即可,由于网络原因会存在无法上传或出错,多重复几次即可
项目测试
使用pypi安装项目
可以发布到testpypi,进行测试,testpypi会更快
1 | pip install -i https://pypi.org/simple packagename==X.X.X |