Python库的开发和发布(一):快速入门
哈喽大家好~咱们课题组又推出了新系列【Python库的开发和发布】,本篇推送是系列第一弹~
本系列中,我们会介绍一个完整的Python库的发布流程。本篇文章首先简单介绍一下流程,给大家一个初步的印象。大体上,我们可以把一个Python库的发布过程分为三步:主体程序编写、编写setup.py文件和发布到PyPI上。
本文环境: - 操作系统:Mac OS 10.12.3(尚未测试Windows的稳定性) - Python版本:2.7.13(尚未测试3.x是否可用)
一
- 主体程序 -
这个程序想实现的功能很简单,是删除某个目录下所有的tex临时文件,然后输出所有处理的文件和对应的文件夹。为了用着更方便,我试图打包成了命令行命令,方便使用。
1. 开发功能
首先我编写了一个函数,实现删除tex临时文件的功能。这里的主要逻辑是,用扩展名是不是可能是临时文件的后缀+文件有没有同名tex文件判断是不是tex临时文件,如果是,则删除并输出信息。
2. 命令行程序设计
这里我使用了标准库的optparse来生成命令行命令,在main函数定义了解析命令行命令的方法。
二
- 编写setup.py -
setup文件是用来实现打包和安装功能的文件,非常重要。这里我使用了比distutils更为先进的setuptools编写setup文件。
解释一下几个参数。“packages”和“scripts”是主体程序的文件夹和文件;entry_points是用来生成命令行工具或者GUI工具的(理论上是跨平台的),比如这里我生成了一个texcleaning的命令来代替texcleaning.py的main函数,安装成功以后就可以直接使用“texcleaning”命令,但是正是因为如此,这里可能需要请求管理员权限。
三
- 发布和升级Python库 -
1. 发布
在工作目录下,首先生成PKG-INFO:
然后上传PKG-INFO到PyPI上,这样PyPI便登记了这个库的信息。
2. 升级
PyPI上登记信息之后,或者后续需要升级,在工作目录下打包并发布即可。
打包之前,删除dist文件夹中的旧版本打包文件,然后生成新文件:
否则上传时会报错说旧版本已经上传过了。
然后把新版本的打包文件上传到PyPI上面:
这里会要求输入PyPI的账号密码,把注册过的账号密码输入即可。现在我们可以根据文档中的方法使用库了。
四
- 小结 -
到此为止,一个Python库的开发、打包、发布和升级的步骤就完成了。这里有选择性地忽略了很多细节,大家不用担心~在后面的部分,我们会详细介绍更多关于Python库开发过程中的各个方面。
本文生成的库的地址是:texcleaning 0.0.1.dev3
源码地址是:Guo-Zhang/texcleaning
(可复制蓝色字体链接到浏览器打开)
文/iGuo
排版/吃货A
China's Prices Project
微信号:XMUCPP
项目专栏:China's Prices Project - 知乎专栏
联系邮箱(项目负责人iGuo):
zhangguocpp@163.com
相关文章
- python实现K近邻算法案例
- Python入门到进阶课程推荐,免费课程一键领取
- python秒起https 文件服务器
- python解压bz2文件命令,在Python中解压缩.bz2文件
- Python入门系列(十)一篇学会python文件处理
- Python入门系列(十一)一篇搞定python操作MySQL数据库
- python中关于命名的例子_Python 命名规范入门实例「建议收藏」
- python读取pkl_Python 读取文件
- python读取图像数据的一些方法[通俗易懂]
- Python入门
- 手把手教你入门Python中的Web开发框架,干货满满!!
- 软件测试|一文带你入门Python图片处理神器Pillow
- 基于Python的OpenCV有关图像处理的基本操作
- Python bool类型和比较运算符(入门必读)
- Linux下Python编程:从入门到精通(linux下python编程)
- Python类的基础入门知识
- python基础教程之简单入门说明(变量和控制语言使用方法)