从0开始发布一个Python包
写代码
首先当然是写好你的代码,我这里使用 Pycharm 来创建项目。
创建项目时,项目目录名命名随意,在此笔记中,我的项目名叫SrunTool
。
创建虚拟环境
python -m venv venv
./venv/Scripts/active
编写代码
一个最基础的 Python 软件包的目录结构应该是这样的:
SrunTool/ # 项目根目录
├── .gitignore # 忽略文件清单,此清单包含的文件将不会被上传到 GitHub
├── README.md # 基础文档,其内容将展示在 PyPI 上
├── LICENSE # 许可协议
├── src/ # 代码目录
│ └── sruntool/ # 软件包目录
│ ├── __init__.py # 初始化文件,改文件会在导入该软件包时被运行
│ └── srun_operator.py # 主要的代码
└── setup.py # 软件包信息
注意
虽然项目可以随意命名,但软件包的命名尽量保证为**全小写且无下划线**的形式!
比如此处的 sruntool
。
创建.gitignore
文件
用于排除部分不需要上传到GitHub的文件,务必把#
以及其后的字符删除
.idea/ # IntelliJ IDEA 的项目文件夹
venv*/ # 虚拟环境文件夹
dist/ # 用于分发软件包的文件夹
build/ # 编译产生的文件夹
*.egg-info/ # Egg 包文件夹
公开接口
在 src/sruntool/__init__.py
中,导入需要公开给外部的接口
from sruntool.SrunOperator import SrunOperator
编写说明文档
在此比较简单的项目中,我只写了 README.md 一份简单的文档。 其中包含了 项目简介、安装方法、使用方法 等信息。
在一些更复杂的项目,你可能需要更丰富的文档。
选择开源许可证
为你的项目选择合适的开源许可证,
并将许可证内容写入LICENSE
文件。