一个小破网站,居然比Python 官方还牛逼

苏木君前两天,我发现有个前同事写的 Shell 脚本经常在出问题,考虑这个脚本一直挺不稳定的,维护起来也挺头疼,原因是 Shell 脚本写稍微复杂一点的逻辑,代码就变得十分臃肿,对比 Python 真的太差劲了。


这个 Shell 脚本中有一个功能是检查机器上的 rpm 包与中心端的包版本进行对比,在本地用 Shell 取 rpm 信息很方便,但要取 rpm 包版本,其实是很难的。

原因是 rpm 包的版本格式分非常多种,根本无法使用简单的字符串分割来取得具体的版本号,更不用说版本对比。

在重写这个功能的时候,我在找到了能直接获取 Linux 机器 rpm 包的 Python 接口库,这个库要使用 yum 进行安装 

装上之后,就可以直接导入使用。由于不是通过 pip 安装的,因此 rpm-python 是安装在 /usr/lib64/python2.7/site-packages/ 目录下的。  

1.问题来了 

接口库找到了,也安装上了,可问题是。。。

该怎么用???

你以为百度一下就知道了?

百度出来的,关于这个库的介绍几乎没有。找到的几个也不知所云,完全 get 不到逻辑。

于是我尝试着去该库的 pypi 和 github 上,希望找到一些 demo 啥的,先入个门。

看来是我想多了,要啥没啥,一片空白。。

 

 使用 help 查看呢?更是一头雾水,没提取到有用的信息

 2.神奇的网站

好在 Google 上还是有点用的,它把一个神奇的网站推送到了我的面前,这个网站,就是今天我要为你介绍的主角。

网站的主界面如下,站如其名啊,就是通过 代码示例 来让你学习各种库的使用。

 整个网站非常的简洁,只有一个搜索框,在这个搜索框里输入你想要学习的 python 库,就会立马为你找到该库的用法示例,并且会查到当前有多少的开源项目在使用它。

很明显上面的第二个包,才是我们需要的东西,点进去后,你会发现一个全新的世界。

在你面前是一个又一个的完整的代码示例,这些示例系统、全面,非常适合初次学习阶段的理解。

需要强调的,这些示例全部摘自开源项目,然后按照每个示例上方的链接转到原始项目或源文件。

若你觉得有些示例的代码写得不错,对你也有帮助的,可以给它点个赞。。

就以 rpm 库为例,来感受一下。

获取已安装的所有所有 rpm 包

 检查一个库是否已经安装过?

 如何根据关键词搜索指定的包并精准获取其版本

 如何获取离线rpm包的信息

还有挺多示例的,这里就不一一列举了。

参照着上面给出的真实案例,我也整理出我属于我自己的 rpm 包的用法,比全网 90% 的文章都来得清晰易懂

rpm 包无非就分两种:

1.未安装的 rpm包

2.已安装的 rpm包

想要获取这两种包,方式是不一样的。

 获取未安装的 rpm 包信息

获取已安装的 rpm 包信息

 

但喝水不忘挖井人,以上都是从这个网站中提炼出来的。

本篇文章的主角并不是 rpm 这个库的用法,而是上面这个网站。

与 Python 官方网站提供的标准库示例不一样(赶紧切点题,不然有人说我标题党了),这个网站 ,不仅涵盖了 Python 的内置库,只要你能说得上名的 Python 库(当然你自己测试上传到 pypi 的那种库肯定不能算是吧)应该都在这个网站上找到你对应的代码示例

 全站所收录的 python 库大概有将近 2000 个,对应大多数人的开发应该都能满足了,并且最重要的是,上面的示例全部来源真实的项目,因此更具参考价值。

更多相关推荐

一个小破网站,居然比 Python 官...

前两天,我发现有个前同事写的Shell脚本经常在出问题,考虑这个脚本一直挺不稳定的,维护起来...

继续阅读

一个小破网站,居然比 Python 官...

来源:Python编程时光前两天,我发现有个前同事写的Shell脚本经常在出问题,考虑这个脚本一直...

继续阅读

重磅:JetBrains 推出“下一代 ID...

点击上方蓝色字体,选择“标星公众号”优质文章,第一时间送达11月29日,JetBrains在官方博客宣...

继续阅读

怎么使用python打包一个应用?

     项目中往往需要将一个应用进行可重复的使用,我们可以直接借助python对django应用程序进行...

继续阅读

七夕节马上到了,有对象的,无对...

今天已经周三了还有三天就是七夕节了,要给女朋友买礼物怕是来不及了!那怎么办呢?那么就给她...

继续阅读

nodejs和python爬虫 哪个好_我用...

vardgram=require(‘dgram’);varsocket=dgram.createSocket(‘udp4’);socket.on(‘message’,funct...

继续阅读

一个“牛逼”的 Python 命令行解析...

在Python中,命令行解析库有非常多的选择方案,系统自带的模块有argparse,有Flask作者写的cli...

继续阅读

一个“牛逼”的 Python 命令行解析...

题图:Photoby MarkRabe on Unsplash在Python中,命令行解析库有非常多的选择方案,系统自带的...

继续阅读

只有 Python ORM Pony ORM,一个...

只有Python魔法少女才知道的PonyORM开发项目时,经常会用到ORM,而Python里能用的ORM其实也没...

继续阅读

python debug工具_一个牛逼的 Py...

源/开源最前线一般情况下,在编写Python代码时,如果想弄清楚为什么Python代码没有按照预期执...

继续阅读