Luca Bravo
统计
文章总数 52篇
总字数 6.6万
上次更新 1天前
运营时长 2年6个月
分类
标签
AI Arch BF CLI CSS Fuwari Giscus GTK HEO JS KDE K签 Linux Lisp LLM Path Pypi Python RSS Vim VTB VUP Whl WP 上海 专业 主题 云朵 享乐 优化 伦理 便利店 俄国 光标 内耗 函数式 分析 创伤 创意 判断 前端 北京 参观 哲学 商业 国庆 壁纸 天津 姐妹 字典 安装 实用 对话 度假 开发环境 开源 归档 微风 心理 意义 技校 抚远 拥抱 推荐 插件 摄影 政策 故障排查 效果 散文 文件 文化 旅游 日本 显卡 样式 模糊 治愈 浏览器 浦东 浦西 热力图 特效 猫猫 玩具 环境 甘城 生态 病毒 直播 社会 社团 秋游 科幻 移民 系统 终端 经济 美化 美缝 耳机 脑操 自动驾驶 苏州 茅山 萌系 补档 解释器 设计 评论 话术 谷子 走路 轮子 辍学 迁移 运维 重构 随机 音频 颜文字 颜色 首都 麦金塔 鼠标
317 字
2 分钟
把你的库上传到 PyPI,共享到全世界
首次上传请安装 twine 库
pip install twine
规范文件结构
项目文件夹里应该是这样的结构:
- <项目名称>
__init__.py
(主程序)
LICENSE
pyproject.toml
(库的信息文件)README.md
填写 pyproject.toml
以我的 Output
库为例子:
[project]
name = "outputs" #项目名称
version = "1.12" #版本
description = "这是一个用于扩展CLI打印功能的Python库,主要发展方向是类似`logging`的日志记录功能,但也发展其它方向,而且还支持PinkShell的高仿样式。" #简介
dependencies = ["conkits"] #需要依赖库
authors = [{ name = "Pinpe", email = "813233375@qq.com"}] #作者信息集合
readme = "README.md" #README文件名称
requires-python = ">=3.6" #所需Python版本
classifiers = [
"Programming Language :: Python :: 3", #制作语言
"License :: OSI Approved :: MIT License", #许可证
"Environment :: Console", #类型/用途
"Operating System :: Microsoft :: Windows", #支持的操作系统(下面两条同理)
"Operating System :: MacOS",
"Operating System :: POSIX :: Linux",
]
[build-system]
requires = ["setuptools>=61.0"] #不需要改变
build-backend = "setuptools.build_meta" #不需要改变
[project.urls]
"blog-url" = "https://pinpe.top" #作者博客地址
打包库文件
在终端打开项目文件夹:
python -m build
上传到 PyPI
python -m twine upload --repository-url https://upload.pypi.org/legacy/ dist/* --verbose
上传过程中需要使用 API token,可在 PyPI 官网注册后申请。