python执行脚本时的命令行选项_Python 处理脚本的命令行参数(二):使用click
安装click
pip install click
使用步骤
使用@click.command() 装饰一个函数,使之成为命令行接口
使用@click.option() 等装饰函数,为其添加命令行选项
example:
importclick
@click.command()
@click.option('--count', default=1, help='Number of greetings.')
@click.option('--name', prompt='Your name',
help='The person to greet.')defhello(count, name):"""Simple program that greets NAME for a total of COUNT times.""" #会当作help信息进行输出
for x inrange(count):
click.echo('Hello %s!' %name)if __name__ == '__main__':
hello()
在上面的例子中,函数hello接受两个参数,分别是count和name,他们的取值从命令行中获取,这里我们使用了click模块中的command、option、echo,他们的作用如下:
command:使函数hello成为命令行接口
option:增加命令行选项
echo:输出结果,使用echo进行输出是为了更好的兼容性,因为python 2中的print是个语句,python 3中的print 是一个函数
运行上面的脚本,可以通过命令指定--name,--count的值,由于我们在option中指定了prompt选项,那么如果我们执行脚本没有传递name这个参数时,Click会提示我们在交互模式下输入
PS:与argparse模块一样,click也会为我们自动生成提示信息
************python clicktest.py --help
Usage: clicktest.py [OPTIONS]
Simple program that greets NAMEfora total of COUNT times.
Options:--count INTEGER Number of greetings.--name TEXT The person to greet.--help Show this message and exit.
其它参数:
option最基本的用法就是通过指定命令行选项的名称,从命令行读取参数值,再将其传递给函数。option常用的参数含义:
default: 设置命令行参数的默认值
help:参数说明
type:参数类型,可以是string、int、float等
prompt:当在命令行中没有输入相应的参数时,会更具prompt提示用户输入
nargs:指定命令行参数接受的值的个数
required:是否为必填参数
Click 2.0还加入了ANSI colors支持,如果输出结果到文件中还会自动去处ANSI codes。
要使用ANSI colors我们需要colorama包配合操作:
pip install colorama
示例:
click.echo(click.style("Hello World!", fg='green')) #click.secho('Hello World!', fg='green')
python执行脚本时的命令行选项_Python 处理脚本的命令行参数(二):使用click相关推荐
- make命令的参数选项(执行make时可以添加哪些选项)
以下内容源于C语言中文网的学习与整理,如有侵权请告知删除. 在执行 make 命令时,有时根据需要,可以添加某些参数选项.比如只打印命令但不执行命令的参数选项是 "-n" ,还有只 ...
- 运行shell脚本时怎么知道jdk路径_Shell写脚本关于ssh执行jar包,需要刷新JDK路径的问题...
比如脚本中下面这一段 ssh $i "java -jar /applog/$PROJECT/$APPNAME --server.port=$SERVER_PORT >/dev/null ...
- python执行linux命令返回结果_Python中调用Linux命令并获取返回值
方法一.使用os模块的system方法:os.system(cmd),其返回值是shell指令运行后返回的状态码,int类型,0表示shell指令成功执行,256/512表示未找到,该方法适用于she ...
- python创建包含双引号的字符串代码_python 字符串组成MySql 命令时,字符串含有单引号或者双引号导致出错解决办法...
引用自:https://blog.csdn.net/zhaoya_huangqing/article/details/48036839 一.在组成SQL语句并发送命令时完全按照Python中的样式去传 ...
- python 运行cmd命令失败怎么办_python manage.py runserver命令在cmd命令框中可以正确执行,但是在pycharm的终端中运行就失败了!...
源自:2-2 初始Django项目 python manage.py runserver命令在cmd命令框中可以正确执行,但是在pycharm的终端中运行就失败了! (venv) E:\python\ ...
- python程序打包时出现lib not found_pyinstaller打包py脚本Warning:lib not found等相关问题...
小爬从使用Pyinstaller打包py为exe文件以来,一直都会碰到Warning:lib not found等相关问题,诸如: 虽然大多数时候,您像我一样忽略这些warning,打包后的exe也能 ...
- python执行airtest时,OPPO手机遇到的问题
1.要设置yosemite输入法为 默认输入法 2.打开"禁止权限监控" 3.打开手机本地"pocoserves"应用的 自启动 .(不然调用启动会很慢)
- python结果按行输出_python dataframe 输出结果整行显示的方法
在使用dataframe时遇到datafram在列太多的情况下总是自动换行显示的情况,导致数据阅读困难,效果如下: # -*- coding: utf-8 -*- import numpy as np ...
- python如何读取csv文件的某两行_Python 读取csv的某行
站长用Python写了一个可以提取csv任一列的代码,欢迎使用.Github链接 csv是Comma-Separated Values的缩写,是用文本文件形式储存的表格数据,比如如下的表格: 就可以存 ...
最新文章
- php万能注入密码,php下的SQL注入万能用户名和密码
- AntV中的饼状图重复渲染问题解决
- 用Java处理大文件
- 手机进水急救——爆米花可用来吸干水分
- 怎么安装python3.7 setuptools与pip_如何安装python到setuptools、pip工具安装
- 做老板的,首先要懂销售,销售什么?
- 朱啸虎回应“美团滴滴合并”;小米成世界第四大手机制造商;Ant Design 3.26.1 发布 | 极客头条...
- 拓端tecdat|机器学习:在SAS中运行随机森林
- linux内核C -- 第09课:链接过程中的强符号和弱符号
- Google Java编程规范
- 增值税发票识别,智能自动识别
- 【ATSC】【OTT】Netflix将作为美国有线机顶盒界面中的一个频道
- jQuery选择器(二)(基本过滤器,内容过滤器,可见过滤器)
- XV6 - bootsect.S
- HDU-5855 Less Time, More profit(最大权闭合图+二分)
- 网络中的中间商(CDN)
- Greeplum+GPTest
- jdjjsjsjhfshafhiehf
- css总结 -使用display:inline-block,出现元素高度错位
- 用JS代码自动填写正方教务系统的教学评价
热门文章
- 使用VC6.0开发COM组件 - 傻瓜式,不讲理论,只讲实例
- 200个 jquery插件
- 120 - 算法 -找到n个无序数中的 第k个最小的数 快排的变体
- 测试是为了对软件质量进行度量和评估,软件测试复习题
- html 自动生产,【SQL】用Sql Server自动生产html格式的数据字典
- c语言win api函数,Win2K下的Api函数的拦截
- Linux系统升级维护费,Antergos Linux 宣布停止维护
- python爬虫可以爬取哪些有用的东西_Python爬虫系列(十三) 用selenium爬取京东商品...
- 文本以大写字母html,如何强制EditText以大写字母开始文本?
- rust 死后不知道家在哪_女朋友问去哪吃饭别说不知道了,郑州这几家餐厅最适合情侣约会。...