optparse的模块编译参数使用
参考:https://www.cnblogs.com/jokerjason/p/5730064.html,
https://www.cnblogs.com/yubenliu/p/6144492.html,
https://www.cnblogs.com/blacksunny/p/5315545.html,
http://docs.python.org/library/optparse.html
简单的例子
from optparse import OptionParser
usage="myprog [-f<filename>][-s<xyz>]arg1[,arg2..]"
optParser=OptionParser(usage)
optParser.add_option("-f","--file",action="store",type="string",dest="filename")
optParser.add_option("-v","--vison",action="store_false",dest="verbose",default="none",help="make losts of noise [default]")
fakeArgs=['-f',"file.txt",'-v','good luck to you','arg2','arg']
options,args=optParser.parse_args(fakeArgs)
opt,arg = optParser.parse_args()print(opt)
print (arg)
print(options)
print (args)
print (options.filename)
print (options.verbose)
对参数结果分析:
可以看出命令 optParser.parse_args()中编译的返回包含两部分,一部分是程序中add_option添加编译的参数,另一部分是传入,但没有add_option传入的部分,optParser.parse_args的作用 可以传递一个参数列表给parse_args(),否则,默认使用命令行参数(sysargv[1:]),就相当于在命令行中输入了fakeArgs中的内容
>>options,args=optParser.parse_args(fakeArgs)
>这个函数的参数是空或一个list的字符串列表,
>若为空,这表示返回所有定义的参数列表到options的字典,args为空列表
>若不为空,返回的options表示前面add_option过的字典,args会包含这个参数list中有但前面add_option命令没有的字符串
命令之间的关系
# 参数的含义[-f<filename>],和下面optParser.add_option()是对应关系,若下面第二步没有这个参数,第三步使用这个属性会报错
usage="myprog [-f<filename>][-s<xyz>]arg1[,arg2..]"
parser=OptionParser(usage) # 第一步optParser.add_option("-f","--file",action="store",type="string",dest="filename") # 第二步
print (options.filename) # 第三步
最开始的字符串[-f<filename>][-s<xyz>]
> 没有实际的执行功能,只是作为一个对所有参数的罗列可以快速查看有哪些参数
.add_option()函数主要的几个参数
optParser.add_option("-f","--file",action="store",type="string",dest="filename",default='',help = 'help words')
第一个"-f",第二个"–file",在参数列表的编译的时候使用,如下
fakeArgs=['-f',"file.txt",'-v','good luck to you','arg2','arg']
options,args=optParser.parse_args(fakeArgs)
dest 定义了后边访问该对象时的属性名字,可通过该名字访问,若未写该属性则可以通过options.file(程序中的例子)使用该属性值,但若写了该参数值,则必须以该参数值的作为属性名访问
print (options.filename)
default 表示的是当没有给如变量时的默认值
optparse的模块编译参数使用相关推荐
- python 获取参数模块_Python中获取启动程序时后面跟的参数的方法(optparse模块)【冰斌棒】...
Python中获取启动程序时后面跟的参数的方法(optparse模块)[冰斌棒] 3年前 (2018-01-29) 作者:冰斌棒 分类:冰斌棒18程序计划 阅读次数:871 评论(0 ...
- python hank_python optparse模块
optparse是专门用来在命令行添加选项的一个模块. 首先来看一段示例代码 from optparse import OptionParser MSG_USAGE = "myprog[ - ...
- 使用getopts处理长和短命令行选项
我希望使用我的shell脚本来调用命令行选项的长短形式. 我知道可以使用getopts ,但是像在Perl中一样,我无法对shell进行同样的操作. 关于如何完成此操作的任何想法,这样我就可以使用以下 ...
- Error:java: 无效的标记 -version 编译错误的解决办法
创建新项目,在启动的时候遇到了 Error:java: 无效的标记: -version 这个报错信息 截图如下: 说是在编译的时候遇到了问题,所以我check了下maven配置,Settings里的 ...
- 标记接口,注解和注解处理器的前世今生
文章目录 简介 注解的起源和marker interfaces 注解的定义 Retention Target 自定义参数 在运行时使用注解 在编译时使用注解 总结 简介 相信大部分的开发者都用过注解, ...
- nginx之configure解析以及模板简介
1.路径相关的参数 参数名称 意义 默认值 --prefix=PATH Nginx安装部署后的根目录 默认为/usr/local/nginx目录.注意:这个目标的设置会影响其他参数中的相对目录.例如, ...
- Python模块学习——optparse
Python 有两个内建的模块用于处理命令行参数: 一个是 getopt,<Deep in python>一书中也有提到,只能简单处理 命令行参数: 另一个是 optparse,它功能强大 ...
- optparse模块
该模块提供了解析命令行选项的接口,其中optparse已经在2.7以后的版本中已经不再继续开发好此模块,从2.7后,将开发argparse模块. optparse模块使用的代码示例: #!/bin/s ...
- Python [9] optparse模块生成命令行帮助信息
起初,最先接触python命令行传参是sys模块的argv方法,此方法功能简单,稍微增加一些需求,就不难满足需要了 那么今天就和大家聊聊optparse模块来替换sys模块的argv方法 一.optp ...
最新文章
- Ajax表单提交给C#后台选中的checkbox值
- Andrew Ng机器学习课程14(补)
- try-catch-finally-return执行路径总结
- Scom 2012 中的资源组(Resource Pool)
- 黄聪:bootstrap中模态框modal在苹果手机上会失效
- 蔬菜名称大全500种_96种室内盆栽植物图片及名称,室内植物品种大全
- Illegal mix of collations (utf8mb4_unicode_ci,IMPLICIT) and (utf8mb4_general_ci
- python datetime格式_python time和datetime常用写法格式
- 数学建模——线性规划
- SlideBox 间隔滚动效果
- ps怎么做油漆喷溅画效果
- 怎样把IE设置成默认浏览器
- 发送ajax请求接收json数据,ajax接收到的json数据是空的
- Linux内核4.14版本——mmc core(4)——card相关模块(mmc type card)
- 现在哪个安卓模拟器比较好用--BlueStacks 5
- 《数据库系统》(六)存储管理
- EA001-186-2220-蓝豪杰
- vim实用指南(一):光标移动(3)——滚动屏幕
- angular学习笔记(十四)-$watch(3)
- ElasticSearch入门:使用ES来实现模糊查询功能