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模块的作用是用于解析命令行 ...
随机推荐
- HttpRequestException encountered解决方法
每次pull代码的时候,总是要输入账号,密码,百度了一下HttpRequestException encountered错误 发现是Github 禁用了TLS v1.0 and v1.1,必须更新Wi ...
- HDU-2036 改革春风吹满地 (数学)
Problem Description "改革春风吹满地,不会AC没关系;实在不行回老家,还有一亩三分地.谢谢!(乐队奏乐)" 话说部分学生心态极好,每天就知道游戏,这次考试如此简 ...
- nginx下载,安装,基础命令,和代理tomcat例子理解
nginx代理讲的很好理解:https://www.cnblogs.com/ysocean/p/9392908.html 一.nginx应用场景: 1.反向代理(用的非常多) 客户端发出请求,反向代理 ...
- 《TCP/IP入门经典》摘录--Part 1
TCP/IP基础知识 什么是TCP/IP Transmission Control Protocol/Internet Protocol的简写,中译名为传输控制协议/因特网互联协议,又名网络通讯协议, ...
- Radar Installation(利用数据有序化进行贪心选择)
English appre: an infinite straight line:一条无限长的直线 on the coasting:在海岸线上 Cartesian coordinate system, ...
- Java Web代码审计流程与漏洞函数
常见框架与组合 常见框架 Struts2 SpringMVC Spring Boot 框架执行流程 View层:视图层 Controller层:表现层 Service层:业务层 Dom层:持久层 常见 ...
- laravel框架实现发送邮件的功能
1.在config 下的mail.php中配置(配置后面的两个就行了) 'from' => [ 'address' => env('MAIL_FROM_ADDRESS', '7623018 ...
- laravel路由组中namespace的的用法详解
做公司一个项目的时候发现laravel框架中可以省去action的路径前缀的用法: ps:用简短的话来理解就是说在路由组中定义namespace,可以省去你路由的前缀下面看例子 最终显示如下: 定义的 ...
- 2.sleep和wait的区别:
sleep是Thread类的方法,wait是object(Java类库的老祖宗)的方法 sleep阻塞的线程在指定时间后,会转变为可执行状态:wait它要等待notify的唤醒 执行了sleep的线程 ...
- DVWA全级别之File Upload(文件上传)
File Upload File Upload,即文件上传漏洞,通常是由于对上传文件的类型.内容没有进行严格的过滤.检查,使得攻击者可以通过上传木马获取服务器的webshell权限,因此文件上传漏洞带 ...