【3】Python之Click 库 命令行参数解析

Click是Flask的作者开发的一个第三方模块,用于快速创建命令行。它的作用与Python标准库argparse相同,但是使用更加简单。
click相对于argparse,就好比requests相对于urllib

Click使用分两步:
1)使用@click.command() 装饰一个函数,使之成为命令行接口;
2)使用@click.option() 等装饰函数,为其添加命令行选项等。

##Click 官方例子1
import click
@click.command()              //使函数hello成为命令行接口
@click.option('--count', defaut=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 x in range(count):
        click.echo('Hello %s! % name')

if __name__ == '__main__':
    hello()     
##option常用的设置参数
default: 设置命令行参数的默认值
help:    参数说明
type:    参数类型,可以是string, int, float等
prompt:  命令行提示信息,可输入参数
nargs:   指定命令行参数接受的值的个数
##Click 官方例子2
##通过nargs设定参数个数,type设置参数类型
@click.command()
@click.optoin('--pos', nargs=2, type=float)
def findme(pos):
    click.echo('%s / %s' % pos)

###
@click.command()
@click。option('--hash-type', type=click.Choice(['md5', 'sha1']))
def digest(hash_type):
    click.echo(has_type)

Leave a Reply

Your email address will not be published. Required fields are marked *