最近兴趣使然写了几个Python库,也发布到了Pypi上,虽然没什么人下载,但本身在其余机器上用着也会很方便。这里我向你们介绍一下如何在Pypi上发表本身的Python库。python
很显然地要在Pypi上注册一个帐号。git
原则上安装了pip的环境都有setuptools,但并不影响你去尝试升级一下它。github
pip install --upgrade setuptools
这是一个简化将库发布到Pypi上流程的工具,具体的使用以后会讲到。bash
pip install --upgrade setuptools
大名鼎鼎的requests库的做者大神kennethreitz为你们准备了一个仓库做为一个setup.py的很好的模板,固然你也能够本身手写setup.py。工具
git clone https://github.com/kennethreitz/setup.py
建议你们直接编辑以前的仓库里的setup.py, 只须要修改一些必要的配置就能够了。这是我最近编写的库condition_chain的配置。ui
... # Package meta-data. NAME = 'condition_chain' DESCRIPTION = 'Process a series of conditional judgement with a chained call.' URL = 'https://github.com/duyixian1234/condition_chain' EMAIL = 'duyixian1234@outlook.com' AUTHOR = 'Yixian Du' # What packages are required for this module to be executed? REQUIRED = [ # 'requests', 'maya', 'records', ] ...
接下来咱们就能够编写本身的代码了,要注意源代码文件夹(仓库里的my_package文件夹)的名字与setup.py里配置的包名(Name)要一致。
另外在从新上传以前咱们要修改__version__.py里的版本号,以避免覆盖了之前的上传(相信会有人是须要以前版本的库的)。
最终的代码结构this
│ LICENSE │ MANIFEST.in │ README.rst │ setup.py │ └─condition_chain core.py __init__.py __version__.py
在setup.py的同级目录下运行如下命令。编码
python setup.py sdist bdist_wheel
而后运行code
twine upload dist/*
注意要输入Pypi帐号和密码。ip
以后咱们就能够在Pypi里搜索到本身的Python库了,固然也能够直接经过pip安装。