python命令行开发--click

前言

按照官方的介绍:Click 是一个利用很少的代码以可组合的方式创造优雅命令行工具接口的 Python 库。 它是高度可配置的,但却有合理默认值的“命令行接口创建工具”。

它致力于将创建命令行工具的过程变的快速而有趣,免除你因无法实现一个 CLI API 的挫败感。

Click 的三个特性:

任意嵌套命令
自动生成帮助页面
支持在运行时延迟加载子命令

安装

直接从pypi中安装

pip install click

推荐大家使用豆瓣源

pip install -i https://pypi.douban.com/simple click

官方建议使用virtualenv环境来进行安装不是本文介绍要点,故略过。有兴趣可直接参考click官方文档[1]进行学习配置。

快速上手

我们通过一个简单的例子来说明,新建main.py文件:

import click


@click.command()
@click.option('-n', '--name', type=click.STRING, help='input your name please', required=True)
def say_hello(name):
    click.echo('hello {name}'.format(name=name))


if __name__ == '__main__':
    say_hello()

函数say_hello通过装饰器click.command()变为一个命令行工具
click.option()则是定义了参数name值的类型是String以及显示的提示help
我们可以在终端中进行调试查看

python main.py --help

可以得到输出:

Usage: main.py [OPTIONS]

Options:
  -n, --name TEXT  input your name please  [required]
  --help           Show this message and exit.

接着我们传入参数值调用

python main.py -n silence4allen

可以得到输出:

hello silence4allen

至此,我们通过一个demo已经简单地了解了click的使用方法

参考文档

英文文档:https://click.palletsprojects.com/en/7.x/
中文文档:https://click-docs-zh-cn.readthedocs.io/zh/latest/index.html


  1. click文档中配置virtualenv的方法 ↩︎

posted @ 2021-02-23 10:46  silence4allen  阅读(107)  评论(0编辑  收藏  举报