项目开发--祖传代码打包更新

背景

1、如何将代码打包成能够被pip install 的程序包,方便后续的使用和管理更新。

解决方案

将代码打包成可通过 pip install 安装的程序包涉及几个步骤。以下是创建和发布Python包的基本指南:

  1. 准备包结构
    首先,你需要创建一个合适的包结构。一个基本的包结构通常如下所示:
your_package/
├── your_package/
│   ├── __init__.py
│   └── module1.py
│   └── module2.py
│   └── ...
├── tests/
│   ├── __init__.py
│   └── test_module1.py
│   └── ...
├── setup.py
├── README.md
├── LICENSE
└── requirements.txt

init.py:一个空文件,标识该目录是一个Python包。 module1.py, module2.py 等:你的包的代码文件。 tests/:包含测试代码的目录。 setup.py:包含包的元数据和安装配置的脚本。
README.md:包的说明文件,通常为Markdown格式。 LICENSE:包的许可证文件。
requirements.txt:包的依赖列表。

  1. 编写 setup.py
    setup.py 是一个Python脚本,用于定义包的属性和配置安装过程。以下是一个基本的 setup.py 示例:
from setuptools import setup, find_packages

setup(
    name='your_package',
    version='0.1.0',
    author='Your Name',
    author_email='your.email@example.com',
    packages=find_packages(),
    include_package_data=True,
    url='http://your-package-homepage/',
    license='LICENSE',
    description='A short description of your package',
    long_description=open('README.md').read(),
    long_description_content_type='text/markdown',
    install_requires=[
        # 依赖列表
    ],
    classifiers=[
        # 包的分类列表,例如:
        'Development Status :: 3 - Alpha',
        'Intended Audience :: Developers',
        'License :: OSI Approved :: MIT License',
        'Programming Language :: Python :: 3',
        'Programming Language :: Python :: 3.7',
        'Programming Language :: Python :: 3.8',
        'Programming Language :: Python :: 3.9',
    ],
)
  1. 编写 README.md 和 LICENSE
    README.md 应该提供关于包的基本信息,包括它的用途、安装说明、使用方法等。LICENSE 文件应该包含你的包的许可证的完整文本。

  2. 确定依赖
    在 setup.py 中的 install_requires 属性列出了包的依赖。requirements.txt 也可以列出依赖,通常用于开发环境。

  3. 打包
    在包的根目录下运行以下命令来创建包的发行版:

python setup.py sdist bdist_wheel

这将在 dist/ 目录下创建发行版文件。

  1. 上传到PyPI
    在上传之前,你需要注册一个PyPI账户。然后使用 twine 来上传你的包:
twine upload dist/*

确保在上传之前检查 version 号,每次上传应该是一个更高的版本号。

  1. 安装包
    其他人现在可以使用 pip 来安装你的包:
pip install your_package

注意事项
确保测试你的包在不同的环境中都能正常工作。
考虑使用 setuptools_scm 来自动管理版本号。
阅读 PyPA的打包教程 以获取更多详细信息和最佳实践。
将代码打包并发布为可安装的程序包是一个涉及多个步骤的过程,但遵循上述指南将帮助你顺利完成。

参考文献

python–如何将自己的包上传到PyPi并可通过pip安装
如何打包上传Python程序或模块包到PyPi供其他人使用pip下载?

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值