python命令行参数处理模块 optparse 使用参考
from optparse import OptionParser parser = OptionParser()
parser.add_option( '-f', '--file', dest='filename', help='write report to FILE', metavar='FILE' )
parser.add_option( '-q', '--quiet', action='store_false', dest='verbose', default=True, help='do not print status messages to stdout' ) (options, args) = parser.parse_args() 注: 你也可以传递一个命令行参数列表到 parse_args()
如果不传,默认使用 sys.argv[1:] parse_args() 返回的两个值 options 是对象 optpars.Values 保存有命令行参数值,只要知道命令行参数名,如 file 就可以访问其对应的值 options.file
args 由 positional arguments 组成的列表 action 是 parse_args() 方法的参数之一,它指示 optparse 当解析到一个命令行参数时该如何处理。actions 有一组固定的值可供选择,默认是 store ,表示将命令行参数值保存在 options 对象里。 示例
parser.add_option( '-f', '--file', action='store', type='string', dest='filename' )
args = ['-f', 'foo.txt']
(options, args) = parser.parse_args(args)
print options.filename 最后将会打印出 foo.txt 当 optparse 解析到 -f ,会继续解析后面的 foo.txt ,然后将 foo.txt 保存到 options.filename 里
当调用 parser.args() 后,options.filename 的值就为 foo.txt 你也可以指定 add_option() 方法中 type 参数为其它值,如 int 或者 float 等等
parser.add_option( '-n', type='int', dest='num' ) 默认地,type 为 string 。也正如上面所示,长参数名也是可选的。其实,dest 参数也是可选的。如果没有指定 dest 参数,将用命令行的参数名来对 options 对象的值进行存取。 store 也有其它的两种形式 store_true 和 store_false
用于处理带命令行参数后面 不带值 的情况。如 -v, -q 等命令行参数: parser.add_option( '-v', action='store_true', dest='verbose' )
parser.add_option( '-q', action='store_false', dest='verbose' ) 这样的话,当命令行解析到 -v 时 options.verbose 将被赋予 True 值,反之,解析到 -q 时会被赋予 False 值 其它的 actions 值还有
store_const 、append 、count 、callback parse_args() 方法提供了一个 default 参数用于设置默认值 parser.add_option( '-f', '--file', action='store', dest='filename', default='foo.txt' )
parser.add_option( '-v', action='store_true', dest='verbose', default=True ) 又或者使用 set_defaults() parser.set_defaults( filename='foo.txt', verbose=True )
parser.add_option(...)
(options, args) = parser.parse_args() 生成程序帮助 optparse 另一个方便的功能是自动生成程序的帮助信息。你只需要为 add_option() 方法的 help 参数指定帮助信息文本
设置 add_option 方法中的 metavar 参数,有助于提醒用户该命令行参数所期待的参数,如 metavar='mode'
注意: metavar 参数中的字符串会自动变为大写
在 help 参数的帮助信息里使用 %default 可以插入该命令行参数的默认值
更多内容,参考 http://www.cnblogs.com/captain_jack/archive/2011/01/11/1933366.html
python命令行参数处理模块 optparse 使用参考的更多相关文章
- Python命令行参数解析模块getopt使用实例
Python命令行参数解析模块getopt使用实例 这篇文章主要介绍了Python命令行参数解析模块getopt使用实例,本文讲解了使用语法格式.短选项参数实例.长选项参数实例等内容,需要的朋友可以参 ...
- python命令行参数解析模块argparse和docopt
http://blog.csdn.net/pipisorry/article/details/53046471 还有其他两个模块实现这一功能,getopt(等同于C语言中的getopt())和弃用的o ...
- Python命令行参数解析模块argparse
当写一个Python脚本时经常会遇到不同参数不同功能的情况,如何做一个更好看的命令帮助信息以及对命令参数解析呢? 这就需要使用argparse模块 #!/usr/bin/env python # -* ...
- python 命令行参数——argparse模块的使用
以下内容主要来自:http://wiki.jikexueyuan.com/project/explore-python/Standard-Modules/argparse.html argparse ...
- python中处理命令行参数的模块optpars
optpars是python中用来处理命令行参数的模块,可以自动生成程序的帮助信息,功能强大,易于使用,可以方便的生成标准的,符合Unix/Posix 规范的命令行说明.使用 add_option() ...
- $命令行参数解析模块argparse的用法
argparse是python内置的命令行参数解析模块,可以用来为程序配置功能丰富的命令行参数,方便使用,本文总结一下其基本用法. 测试脚本 把以下脚本存在argtest.py文件中: # codin ...
- python命令行参数解析OptionParser类用法实例
python命令行参数解析OptionParser类用法实例 本文实例讲述了python命令行参数解析OptionParser类的用法,分享给大家供大家参考. 具体代码如下: from opt ...
- Python命令行参数及文件读出写入
看完了柯老板的个人编程作业,虽然是评测组不用做此次作业,但还是想对本次作业涉及到利用Python命令行参数以及进行文件读出写入操作做一个简单的总结.(个人编程作业还是想自己能敲一敲,毕竟我的码力还是小 ...
- [转]Python 命令行参数和getopt模块详解
FROM : http://www.tuicool.com/articles/jaqQvq 有时候我们需要写一些脚本处理一些任务,这时候往往需要提供一些命令行参数,根据不同参数进行不同的处理,在Pyt ...
随机推荐
- Java Script基础(三) 函数
一.JavaScript中的函数 在JavaScript中,函数类似于Java中的方法,是执行特定功能的代码块,可以重复调用.JavaScript中的函数分为两种,一种是系统函数,另一种是自定义函数. ...
- Gstreamer基本概念介绍(开发前必读)
1. 元件(Elements) 元件(element)是GStreamer中最重要的概念.你可以通过创建一系列的元件(Elements),并把它们连接起来,从而让数据流在这个被连接的各个元件(Elem ...
- CF Set of Strings
Set of Strings time limit per test 1 second memory limit per test 256 megabytes input standard input ...
- OpenShare文档中心
文档是企业重要的智力资产.在企业中,文档一般都以电子文档的形式存在,比如微软.doc格式,xls格式,ppt格式,pdf格式,纯文本.txt格式等:从内容上,可能是商务合同.会议记录.产品手册.客户资 ...
- w3cschool关于list-style-position时的另外发现
首先list-style-position有inside和outside... 另外发现:设置inline-block时 那个圆点消失了.. <!DOCTYPE html> <htm ...
- 十个顶级的C语言资源助你成为优秀的程序员
译者言:学习C语言,需要一点一滴,沉下心来,找个安静的地方,泡上一杯咖啡,在浓郁的香味中一起品味她.(by Boatman Yang) 人们通常认为计算机编程很烦,但是有些人却从中发现了乐趣.每一个程 ...
- ubuntu安装 ibus-google输入法
1.$sudo apt-get install ibus-googlepinyin //ibus 融合了许多种输入法,google便是一种,此步就是下载安装ibus-google拼音输入法. ...
- Sublime Python 插件配置合集
Python PEP8 Autoformat 插件 这是用来按PEP8自动格式化代码的.可以在包管理器中安装.快捷键 CTRL+SHIFT+R 自动格式化python代码 { "auto_c ...
- lamp环境的配置
转载请注明原作者出处 write by xiaoyang 一. 先决条件 系统:RHEL Server6.5 工具:MySQL.MySQL Server.PHP.PHP-MySQL.HTTPD等 ...
- dataAdapter与dataSet和dataTable的填充
对于dataAdapter与dataSet和dataTable的填充,可以分为1对1,1对n,n对n,3种情况. 以SqlDataAdapter为例. //(1)1对1 SqlDataAdapter ...