Python 包制作

Python 包制作

官方文档

Python 包目录

  • /package_parent_folder
    • /package
      • /__init__.py

__init__.py文件内添加name = package,其中package指的是包名

package_parent_folder下添加包文件setup.pyLICENSEREADME.md文件。

LICENSE: 包许可说明

README.md: 包说明文件

setup.py: 包安装设置文件
setup.py所有设置选项

MANIFEST.in 指定package_data匹配规则,当setup.py配置中设置include_package_data=True,将会使用此文件来判断pip包含的的数据,也可以在package_dataexclude_package_data规则进行详细的设置,具体参考文档

MANIFEST.in过滤规则

设置文档

设置项文档

安装Python包制作依赖

  1. setuptools
  2. wheel
  3. build
  4. twine

制作Python包

python3 setup.py sdist bdist_wheel

在包源码目录执行下面命令进行打包

python3 -m build (推荐)

​ 生成文件:

  • /dist
    • package-yourname-version-*.whl
    • package_yourname-version-*.tar.gz

上传Python包

安装上传依赖

  1. twine

Test Pypi

注册账号测试网站上传
> python3 -m twine upload --repository-url https://test.pypi.org/legacy/ dist/*
下载测试
python3 -m pip install --index-url https://test.pypi.org/simple/ example-pkg-your-username

PyPi上传

注册账号上传
twine upload dist/*
  • 报错:invalid command 'bdist_wheel'

    安装wheel

posted @ 2019-04-16 15:53  冬天之歌  阅读(1337)  评论(0编辑  收藏  举报