美文网首页python
PyHubWeekly | 第三期:有了这款Python小工具,

PyHubWeekly | 第三期:有了这款Python小工具,

作者: DevWeekly | 来源:发表于2020-03-03 09:46 被阅读0次

    微信关注公众号【平凡而诗意】,原创技术文章第一时间推送,QQ学习交流群:1077239487。

    本期内容

    PyHubWeekly每周定期更新,精选GitHub上优质的Python项目/小工具。

    我把PyHubWeekly托管到了Github,感兴趣的可以搜索Github项目PyHubWeekly,如果喜欢,麻烦给个Star支持一下吧~

    本期为大家推荐GitHub上5个优质的Python项目,它们分别是:

    1. explainshell

    2. httpie

    3. glances

    4. python-fire

    5. aiLearnNotes

    下面分别来介绍一下上述5个GitHub项目。

    1. explainshell

    Star:7.5k

    作为IT/互联网相关的工作人员,哪怕不是开发者,也有可能会和Linux打交道,我们可以用Linux进行开发、运维等,因此,Linux就成为了一项非常重要的个人技能。

    使用Linux过程中主要打交道的对象就是繁多的Linux命令和选项(options)就成了令人头疼的事情,举一个最为简单的例子,

    > ls -al
    

    这个Linux命令包含两个部分,command和options,ls是查看命令,-a和-l分别代表:显示所有文件(包括以.开头的隐藏文件)、以列表形式显示。

    这些常用的我们都知道,但是有很多使用频率较少的怎么办?我们可以借助explainshell。

    它是一款利用Python开发的Linux命令行工具,通过解析帮助文档,逐个匹配一行Linux命令中不同字符的含义,让你对Linux命令能够一目了然,是一款非常棒的Linux学习工具。

    img

    2. httpie

    Star:45.5k

    不同组件之间相互访问可以通过很多方式,其中restful是比较常用的一种。这里就涉及http请求,我们需要测试数据能够正确的上传和下载。在处理http请求过程中使用较多的工具就是curl。

    curl有很多明显的弊端:对用户不够友好,命令冗长;可视化效果差,没有高亮。httpie就是curl的一个非常好的替代者,它的使用更加简洁明了,而且能够高亮显示请求结果。

    img

    3. glances

    Star:14.9k

    glances就如同它的汉语意思那样,“一眼”、“一瞥”,能够通过一个简单的命令对系统信息一目了然,了如指掌。

    glances利用Python编写的一个跨平台的监视工具,旨在通过curses或基于Web的界面提供大量监视信息。

    img

    你不仅可以通过终端命令行使用该工具,还可以web界面、API接口等对服务器进行远程监控,可以将统计信息导出到文件或数据库。

    4. python-fire

    Star:16.1k

    python-fire是一个款python命令行接口(CLI),仅仅凭它的来历就值得关注一下,它是由谷歌开源的一款python工具包。

    我们在开发项目时往往会需要从命令行传入参数,以往常用的有sys、argparse等,既然有一些成熟的命令行工具,为什么还要推荐python-fire呢?

    因为它有如下优势:

    • 实现接口更加简洁
    • 创建CLI接口更加简单
    • 能够将现有代码转化为接口
    • 它使得bash和python之间的转换更加容易

    示例,

    import fire
    
    class Calculator(object):
      """A simple calculator class."""
    
      def double(self, number):
        return 2 * number
    
    if __name__ == '__main__':
      fire.Fire(Calculator)
    

    接下来,我们可以在命令行下调用对应的接口,也可以通过参数名称直接传参,

    > python calculator.py double 10  # 20
    > python calculator.py double --number=15  # 30
    

    5. aiLearnNotes

    Star:96

    这是我自己在GitHub托管的项目,和上述优质的GitHub项目一起介绍有一些格格不入,也有一些自卖自夸,但是,我还是希望借此机会推荐一下这个项目。

    这个项目围绕AI领域的一些方向展开,目前包含计算机视觉系列,后续会加入机器学习、强化学习、优化算法等系列内容。

    该项目的核心关注点是“动手学习”,也就是说不仅仅局限于理论知识,也会去利用Python动手实现相应的算法,在实现的过程中会对算法的思想具有更加深入的理解。

    以耗时近一年、已经完结的计算机时间为例,里面会有文档逐步介绍算法的思想,然后在利用Python逐步实现,再次进行巩固。此外,项目中不再千篇一律的局限于深度学习,而是从数字图像处理开始介绍,关注到像素级的知识,然后在此基础上介绍传统的图像处理、目标识别算法,然后循序渐进的引入深度学习知识,这样对计算机时间会有更深、更广泛的认识。

    img

    更多精彩内容

    干货 | 2019年共享免费资源整理(上):学习资源篇

    干货 | 2019年共享免费资源整理(下):实用工具篇

    实用工具 | 2款播放器让你免费听遍全网无损音乐

    大数据 | Spark机器学习工作流开发指南

    实用工具 | 你距离PS大神只差这6款免费在线工具!

    简易教程 | 分布式消息发布订阅系统Kafka从搭建到使用

    教程 | 一文搭建你的第一个免费专属博客

    办公效率 | 让你突飞猛进的10个Word技能

    学习工具 | 推荐10款提升自己的优质APP

    Google | Python编程规范指南

    我建了一个QQ学习交流群,旨在“分享、讨论、学习、资源分享、就业机会、互联网内推、共同进步!”,感兴趣的可以加一下,也可以添加我的QQ~ QQ群:164660119;QQ号:498073774;公众号:【平凡而诗意】~

    相关文章

      网友评论

        本文标题:PyHubWeekly | 第三期:有了这款Python小工具,

        本文链接:https://www.haomeiwen.com/subject/hbwflhtx.html