python模块-click

概述

我们有时候要实现命令行带参数去执行函数的时候,可以使用click模块去实现,简单方便。

click常用语法

基础用法

1
2
3
4
5
6
7

import click

@click.command()
@click.option('--name','-name',default='johnw')
def main(name):
print(name)

设置一个参数多个值

其中多个值会被包装成一个tuple

1
2
3
4
5
import click 
@click.command()
@click.option('--name',nargs=2,type='str')
def main(name):
print(name)

一个参数设置多个值,并且类型不同

1
2
3
4
5
6
7

import click

@click.command()
@click.option('--ops',type=(unicode,int))
def main(ops):
print(ops)

问答型参数

1
2
3
4
5
6
import click

@click.command()
@click.option('--name',prompt="Your name is : ")
def main(name):
print("Hello ",name)

密码型参数

1
2
3
4
5
6
7
import click

@click.command()
@click.option('--password',prompt=True,hide_input=True,confirmation_prompt=True)

def encrypt(password):
print('encrypted password')

几个参数

  1. default:默认值
  2. type: int,str,float
  3. help: 提示信息

reference

http://click.pocoo.org/6/options/#basic-value-options