可以直接参照官网
https://packaging.python.org/en/latest/tutorials/packaging-projects/
不过官网打包完直接上传 PYPI 了,国内网速不允许呀,即使上传成功了,你每次 pip 安装自己的包也要等好久,目前有两个解决办法:
ps:这篇文章采用的是第二种方法
python3 -m pip install --upgrade pip
TestPackaging/
├── README.md
├── setup.py
└── mymath/
├── __init__.py
└── operate.py
ps:
def add(num1, num2):
return num1 + num2
# 破烂小工具
#### 介绍
简单介绍
#### 软件架构
软件架构说明
#### 安装教程
1. xxxx
2. xxxx
3. xxxx
#### 使用说明
1. xxxx
2. xxxx
3. xxxx
#### 参与贡献
1. Fork 本仓库
2. 新建 Feat_xxx 分支
3. 提交代码
4. 新建 Pull Request
from setuptools import setup, find_packages
# 读取 readme 文件作为包详细描述
with open("README.md", "r") as fh:
long_description = fh.read()
setup(
name="mymath", # 包名
version="0.0.1", # 版本号
# keywords = ("pip", "cmd", "operate", "math"), # 关键词
description="My math operation", # 简短描述【简介】
long_description=long_description, # 详细描述【使用方法】
long_description_content_type="text/markdown", # 指定详细描述的文本格式
python_requires=">=3.5.0", # python依赖版本
license="MIT Licence", # 指定许可证
# url = "https://github.com/xxxxx", # 项目地址
# author = "ps", # 作者
# author_email = "xxx@xx.com", # 作者邮箱
install_requires=["numpy", "requests"], # 需要安装的依赖
# packages=["operate", ], # 打包目录下的指定模块
packages=find_packages(), # 打包目录下的全部模块
# packages=find_packages(exclude=["test", "test.*"]) # 打包除了指定模块的全部模块
# include_package_data = True, # 打包路径下的其他文件
platforms="any", # 程序适用的软件平台列表
)
ps:
LICENSE 文件可以参照官网给出的许可证示例
https://choosealicense.com/
MIT License 和 GNU GPLv3 都行
ps:
python setup.py bdist_wheel
打包完成后 setup.py 同级目录下会有一个 dist 文件夹,whl文件在里面
pip install xxx.whl
from mymath import operate
if __name__ == '__main__':
print(operate.add(1, 2))
