使用 @click.command() 装饰一个函数,使之成为命令行接口;
使用 @click.option() 装饰函数,为其添加命令行选项等。
- click.option使用
option 最基本的用法就是通过指定命令行选项的名称,从命令行读取参数值,再将其传递给函数。
default: 设置命令行参数的默认值
help: 参数说明
type: 参数类型,可以是 string, int, float 等
prompt: 当在命令行中没有输入相应的参数时,会根据 prompt 提示用户输入
nargs: 指定命令行参数接收的值的个数
metavar:如何在帮助页面表示值
is_eager=True 表明该命令行选项优先级高于其他选项
expose_value=False 表示如果没有输入该命令行选项,会执行既定的命令行流程
callback=run 指定了输入该命令行选项时,要跳转执行的函数
is_flag=True 表明参数值可以省略
例:
import click
@click.command()
@click.option('-i', '--server-ip', help=u'main_server的ip', default='localhost', type=str)
@click.option('-p', '--server-port', help=u'main_server的port', default=1234, type=int)
@click.option('-pwd', '--password', help=u'main_server的password', prompt='main_server的password', type=int)
def main(server_ip, server_port, password):
print(server_ip)
print(server_port)
print(password)
if __name__ == '__main__':
main()
help
因为pwd有prompt参数,缺少时会提示用户输入。
- 既然是密码,那就有隐藏输入
hide_input 和 confirmation_promt,其中,hide_input 用于隐藏输入,confirmation_promt 用于重复输入。
# 将下行更改即可
@click.option('-pwd', '--password', help=u'main_server的password', prompt='main_server的password', hide_input=True, type=int)
网友评论