发布模块到pip和PyPi

时间:2019-05-14 11:52:47

标签: python pip pypi

我已经使用 python 创建了一个模块。我想将其发布到 pip和PyPi ,以便其他人可以轻松下载和使用。我该怎么办?

2 个答案:

答案 0 :(得分:2)

这在Packaging Python Projects中有详细记录。

创建README.md

创建一个名为README.md的文件并根据需要进行编辑(在Markdown中)。

创建setup.py

setup.pysetuptools的构建脚本。它会告诉setuptools有关您的软件包(例如名称和版本)以及要包含的代码文件的信息。

import setuptools

with open("README.md", "r") as fh:
    long_description = fh.read()

setuptools.setup(
    name="example-pkg-your-username",
    version="0.0.1",
    author="YOUR NAME",
    author_email="YOUR EMAIL",
    description="A small example package",
    long_description=long_description,
    long_description_content_type="text/markdown",
    url="https://github.com/pypa/sampleproject",
    packages=setuptools.find_packages(),
    classifiers=[
        "Programming Language :: Python :: 3",
        "License :: OSI Approved :: MIT License",
        "Operating System :: OS Independent",
    ],
)

创建许可证

创建一个名为LICENSE的文件,然后从here中选择内容。

生成分发档案文件

下一步是为程序包生成分发程序包。这些是已上传到软件包索引的归档文件,可以通过pip安装。 我们首先需要确保已安装wheelsetuptools

python3 -m pip install --user --upgrade setuptools wheel

现在,我们需要从位于setup.py的同一目录中运行以下命令:

python3 setup.py sdist bdist_wheel

上传分发档案文件

建议在实际PyPi之前上传到TestPyPi-尽管我不会介绍这一部分。 以下步骤显示了如何将软件包上传到PyPi:

  1. 安装twine
python3 -m pip install --user --upgrade twine
  1. 注册到PyPi
  2. 运行twinedist包上传到PyPi:
python3 -m twine upload dist/*

答案 1 :(得分:0)

答案可以在Internet上轻松找到。我只是引用this site来回答你。您可以按照以下步骤操作:

  1. PyPi上创建一个帐户。

  2. 创建一个README.md文件作为对用户的说明(强烈建议)。

  3. 创建一个setup.cfg文件,并写入以下内容:

[metadata]
description-file = README.md
  1. 通过引用this website创建一个LICENSE文件。

  2. 如@Yang HG所述,编写一个setup.py文件,然后运行python setup.py sdist

  3. 使用twine上传您的发行版。首先,您需要pip install twine,然后运行twine upload dist/*

最后,您的发布可以在https://pypi.org/project/YOURPACKAGENAME/上查看