分类: Python

38 篇文章

Python 命令行之旅:深入 click(三)
前言 在上两篇文章中,我们介绍了 click 中的”参数“和“选项”,本文将继续深入了解 click,着重讲解它的“命令”和”组“。 本系列文章默认使用 Python 3 作为解释器进行讲解。 若你仍在使用 Python 2,请注意两者之间语法和库的使用差异哦~ 命令和组 Click 中非常重要的特性就是任意嵌套命令行工具的概念,通过 Comman…
Python 命令行之旅:深入 click(一)
前言 在上一篇文章中,我们初步掌握了 click 的简单用法,并了解到它与 argparse 和 docopt 的不同。接下来,将深入介绍 click 的各类用法,以让你能轻松打造复杂的命令行程序。 在概念上, click 把命令行分为 3 个组成:参数、选项和命令。 参数 就是跟在命令后的除选项外的内容,比如 git add a.txt 中的 a…
Python 命令行之旅:初探 click
前言 在本系列前面几篇文章中,我们分别介绍了 argparse 和 docopt 的主要功能和用法。它们各具特色,都能出色地完成命令行任务。argparse 是面向过程的,需要先设置解析器,再定义参数,再解析命令行,最后实现业务逻辑。而 docopt 先用声明式的语法定义出参数,再过程式地解析命令行和实现业务逻辑。在一些人看来,这些方式都不够优雅。…
Python 命令行之旅:使用 docopt 实现 git 命令
前言 在前面两篇介绍 docopt 的文章中,我们全面了解了 docopt 的能力。按照惯例,我们要像使用 argparse 一样使用 docopt 来实现 git 命令。 为了让没读过 使用 argparse 实现 git 命令 的小伙伴也能读明白本文,我们仍会对 git 常用命令和 gitpython 做一个简单介绍。 本系列文章默认使用 Py…
thumbnail
Airflow 探究
介绍 Airflow 是一个以编程方式进行编写、调度和监控工作流的平台。 一旦工作流通过代码来定义,它们会变得更加易于维护、版本化、可测试,以及可协作。 使用 Airflow 以有向无环图 (DAGs)的形式编写任务的工作流。Airflow 调度器在满足指定的依赖项的同时,在一组 worker 上执行任务。丰富的命令行实用程序使得通过 DAG 执行…
使用 Python 玩转 WMI
背景 (备注:本文是之前在博客园中发表的文章,因为老博客不再维护,把有价值的博文转移到这里。) 最近在网上搜索 Python 和 WMI 相关资料时,发现大部分文章都千篇一律,并且基本上只说了很基础的使用,并未深入说明如何使用 WMI。本文打算更进一步,让我们使用 Python 玩转 WMI。 什么是 WMI 具体请看微软官网对 WMI 的介绍。这…
Python 命令行之旅:深入 docopt
前言 在第一篇“初探 docopt”的文章中,我们初步掌握了使用 docopt 的三个步骤,了解了它不同于 argparse 的设计思路。 那么 docopt 的使用模式都有哪些呢?其接口描述中都支持哪些语法规则呢?本文将带你深入了解 docopt。 本系列文章默认使用 Python 3 作为解释器进行讲解。 若你仍在使用 Python 2,请注意…
Python 命令行之旅:初探 docopt
前言 在本系列前面四篇文章中,我们介绍了 argparse 的方方面面。它无疑是强大的,但使用方式上略显麻烦。需要先设置解析器,再定义参数,再解析命令行,最后实现业务逻辑。 而今天要介绍的 docopt 则是站在一个全新的视角来审视命令行。你可曾想过,一个命令行程序的帮助信息其实已然包含了这个命令行的完整元信息,那么是否可以通过定义帮助信息来定义命…
聊聊 Python 的单元测试框架(三):最火的 pytest
介绍 本篇文章是《聊聊 Python 的单元测试框架》的第三篇,前两篇分别介绍了标准库 unittest 和第三方单元测试框架 nose。作为本系列的最后一篇,压轴出场的是 Python 世界中最火的第三方单元测试框架:pytest。 pytest 项目地址:https://github.com/pytest-dev/pytest 它有如下主要特性…