click模块学习

1、Click简介

Click:作为“命令行接口创建工具包”,Click使用可组合的方法,利用尽可能少的代码创建更为漂亮的命令行界面。它在高可配置的同时,还保持了较为合理的默认设置。

Click致力于使编写命令行工具的过程快速而有趣,同时避免在执行目标CLI API时产生的崩溃。

Click的三个特点:
1、可任意嵌套命令
2、自动辅助页面生成
3、支持运行时延迟加载子命令

2、示例

Click以装饰器声明命令,将函数变为命令行工具。使用echo()而不是print()是为了在python各版本中更好的兼容运行。

import click

@click.command()
@click.option("--count", default=1, help="Number of greetings.")
@click.option("--name", prompt="Your name", help="The person to greet.")
def hello(count, name):
    """Simple program that greets NAME for a total of COUNT times."""
    for _ in range(count):
        click.echo(f"Hello, {name}!")


if __name__ == '__main__':
    hello()

以上程序示例表述了click的使用方法“–count”表示输出次数,默认值为1,“__name”表示名称,提示输入语为"Your name",命令行执行将输出以下内容:

$ python hello.py --count=3
Your name: Click
Hello, Click!
Hello, Click!
Hello, Click!

3、嵌套命令:

click.command()还可以被嵌套到click.group()中,作为group命令的子命令:

@click.group()
def cli():
    pass
@click.command()
def initdb():
    click.echo('Initialized the database')
@click.command()
def dropdb():
    click.echo('Dropped the database')
cli.add_command(initdb)
cli.add_command(dropdb)

4、增加参数:

使用click.argument(‘name’)也可以对命令增加参数

@click.command()
@click.option('--count', default=1, help='number of greetings')
@click.argument('name')
def hello(count, name):
    for x in range(count):
        click.echo('Hello %s!' % name)

更多说明在见**click的官方文档**

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值