如何创建、上传和安装PyPI包?
我写了一个小模块,现在想知道把它打包上传到 PyPI 的基本步骤是什么:
- 文件结构应该是什么样的?
- 文件应该怎么命名?
- 我需要用 distutils 来创建 PKG-INFO 吗?
- 我的文档(用 sphinx 制作的)应该放在哪里?
6 个回答
2
也许这个奶酪商店教程对你有帮助。在这里:
提交包到包索引
如果你有一些Python模块或包想要分享给Python社区,我们非常欢迎你把它们放到Python包索引里!首先,如果你还没有这样做,你需要把你的项目整理好。你可以参考项目文件和目录布局的指南。之后,你需要阅读关于创建分发版的Python文档:http://docs.python.org/distutils/index.html。
你还可以查看Tarek Ziadé的《在Python中写包》,这本书《专家Python编程》中详细讨论了开发和分发的问题。
3
举个例子总是最好的方法来看看怎么做:
12
我推荐你看看《打包指南》。特别是里面的快速入门部分,这里面讲了怎么做:
- 整理你的项目结构
- 描述你的项目
- 创建你的第一个版本
- 在Python包索引(PyPI)上注册你的包
- 上传你的版本,然后拿好你的毛巾,拯救宇宙!
你还应该看看打包的现状,这个内容在打包简介部分里,能帮助你理清关于setuptools、distutils、distutils2和distribute的一些混乱。
关于文件命名的更新
下面的摘录来自PEP8,它回答了你关于文件命名的问题:
模块的名字应该简短且全小写。如果用下划线能提高可读性,可以在模块名中使用下划线。Python包的名字也应该简短且全小写,不过不建议使用下划线。
因为模块名会映射到文件名,而有些文件系统对大小写不敏感并且会截断长名字,所以模块名最好选得比较短——在Unix系统上这不是问题,但在旧版的Mac、Windows或者DOS上可能会有问题。