argparse 模块使用
import argparse,os data_func=["upload","download"]
req_func=["getfunc","postfunc"]
def func1():
print("this func1") def func2():
print("this is func2") parser=argparse.ArgumentParser()
parser.add_argument('-j',"--jobid",required=False,type=str,help="this is jobid")
parser.add_argument("-host",required=False,type=str,help="this is role of host part ")
parser.add_argument("-f","--function",type=str,choices=(data_func+req_func))
parser.add_argument("-r","--role",type=str,help="role of server")
parser.add_argument("--nargs",nargs='+',help="type need list test ")
parser.add_argument("-muti",action="append",help="muti append")
parser.add_argument("-c","--config",required=False,type=str,help="config of run time ")
args=parser.parse_args()
jobid=args.jobid
host=args.host
role=args.role print(os.path.abspath('cases/Homo.py'))
D:\workspace\AutoFate\src\cases>python argparseutils.py -f download -j 20190001 -r guest -host host1 --a aaa --a bbb --a 9999
{'jobid': '20190001', 'host': 'host1', 'function': 'download', 'role': 'guest', 'nargs': None, 'a': ['aaa', 'bbb', '9999']}
D:\workspace\AutoFate\src\cases>python argparseutils.py -f download  -j 20190001 -r guest -host host1 -muti aa -muti bb -muti 888
{'jobid': '20190001', 'host': 'host1', 'function': 'download', 'role': 'guest', 'nargs': None, 'muti': ['aa', 'bb', '888']}
D:\workspace\AutoFate\src\cases>python argparseutils.py -f download  -j 20190001 -r guest -host host1 --nargs 999 aa bbb
{'jobid': '20190001', 'host': 'host1', 'function': 'download', 'role': 'guest', 'nargs': ['999', 'aa', 'bbb'], 'muti': None}
D:\workspace\AutoFate\src\cases>python argparseutils.py -f download -c exampels/testconfig.json
{'jobid': None, 'host': None, 'function': 'download', 'role': None, 'nargs': None, 'muti': None, 'config': 'exampels/testconfig.json'}
exampels/testconfig.json
D:\workspace\AutoFate\src\cases>python argparseutils.py -f download -c exampels/testconfig.json
{'jobid': None, 'host': None, 'function': 'download', 'role': None, 'nargs': None, 'muti': None, 'config': 'exampels/testconfig.json'}
D:\workspace\AutoFate\src\cases\cases\Homo.py
argparse 模块使用的更多相关文章
- Python解析命令行读取参数 -- argparse模块
		在多个文件或者不同语言协同的项目中,python脚本经常需要从命令行直接读取参数.万能的python就自带了argprase包使得这一工作变得简单而规范.PS:optparse包是类似的功能,只不过写 ... 
- 【python】argparse模块
		来源:http://www.2cto.com/kf/201412/363654.html argparse是python用于解析命令行参数和选项的标准模块,用于代替已经过时的optparse模块.ar ... 
- python argparse模块解析命令行选项简单使用
		argparse模块的解析命令行选项简单使用 util.py #!/usr/bin/env python # coding=utf-8 import argparse parser = argpars ... 
- python命令行解析工具argparse模块【3】
		上一节,我们讲解了ArgumentParser对象,这一节我们将学习这个对象的add_argument()方法. add_argument()方法的定义了如何解析一个命令行参数,每个参 ... 
- Python的Argparse模块是什么?(未完)
		近日在阅读代码的过程中遇到了Argparse模块,记得前段时间已经看了,可是过了两周现在又忘了, 看来写代码一定要钻研到底搞清楚其中原委才行,本文主要参考Python3.6系列官方文档 ... 
- argparse模块
		argparse模块是的编写用户友好的命令行接口非常容易.程序只需定义好它要求的参数,然后argparse将负责如何从sys.argv中解析出这些参数.argparse模块还会自动生成帮助和使用信息并 ... 
- Python 命令行工具 argparse 模块使用详解
		先来介绍一把最基本的用法 import argparse parser = argparse.ArgumentParser() parser.parse_args() 在执行 parse_args() ... 
- Python Argparse模块
		argparse模块 在Python中,argparse模块是标准库中用来解析命令行参数的模块,用来替代已经过时的optparse模块.argparse模块能够根据程序中的定义从sys.argv中解析 ... 
- Python argparse 模块
		Python argparse 模块 test.py: import argparse argparser = argparse.ArgumentParser(add_help=False) argp ... 
- python学习之argparse模块
		python学习之argparse模块 一.简介: argparse是python用于解析命令行参数和选项的标准模块,用于代替已经过时的optparse模块.argparse模块的作用是用于解析命令行 ... 
随机推荐
- Tensorflow中multiply()函数与matmul()函数的用法区别
			1.tf.multiply()函数:矩阵对应元素相乘 官网定义: multiply(x,y,name=None) 参数: x: 一个类型为:half, float32, float64, uint8, ... 
- jdk8-》reduce操作
			什么是reduce操作 聚合操作,中⽂意思是 “减少” 根据⼀定的规则将Stream中的元素进⾏计算后返回⼀个唯⼀的值 常⽤⽅法⼀: Optional<T> reduce(BinaryOp ... 
- 题解【洛谷P1948】[USACO08JAN]电话线Telephone Lines
			题面 题解 很显然,答案满足单调性. 因此,可以使用二分答案求解. 考虑\(check\)的实现. 贪心地想,免费的\(k\)对电话线一定都要用上. 每次\(check\)时将小于\(mid\)的边权 ... 
- Python之路Day05
			字典 字典 -- dict Python的数据结构之一 字典是可变数据类型,无序的 定义 dic = {'key':'Value'} 键值对 字典的作用 存储数据,大大量的,将数据和数据起到关联作用 ... 
- [HDU4609] 3-idiots - 多项式乘法,FFT
			题意:有\(n\)个正整数,求随机选取一个3组合,能构成三角形的概率. Solution: 很容易想到构造权值序列,对其卷积得到任取两条边(可重复)总长度为某数时的方案数序列,我们希望将它转化为两条边 ... 
- Android 开发 微信分享,登陆,获取信息
			1 获取appid和appsecret. https://open.weixin.qq.com/cgi-bin/index?t=home/index&lang=zh_CN ... 
- 第二篇,前端高性能JavaScript优化
			加载和执行 JavaScript是单线程,所以JavaScript的加载和执行是从上下文加载执行完一个继续加载执行下一个文件会阻塞页面资源的加载,所以一般情况下JavaScript文件放在body标签 ... 
- 使用fetch进行数据请求时报json错误
			使用fetch进行数据请求返回response对象,response.json报错.原因是response中含有特殊字符. fetch(url).then(response => respons ... 
- mysql之路4
			MYSQL之约束 2.主键约束 349行cnname换成cname 
- Apache Kafka(四)- 使用 Java 访问 Kafka
			1. Produer 1.1. 基本 Producer 首先使用 maven 构建相关依赖,这里我们服务器kafka 版本为 2.12-2.3.0,pom.xml 文件为: <?xml vers ... 
