示例
from optparse import OptionParser
[...]
def main():
usage = "usage: %prog [options] arg"
parser = OptionParser(usage)
parser.add_option("-f", "--file", dest="filename",
help="read data from FILENAME")
parser.add_option("-v", "--verbose",
action="store_true", dest="verbose")
parser.add_option("-q", "--quiet",
action="store_false", dest="verbose")
[...]
(options, args) = parser.parse_args()
if len(args) != 1:
parser.error("incorrect number of arguments")
if options.verbose:
print "reading %s..." % options.filename
[...]
if __name__ == "__main__":
main()
增加选项(add_option())
OptionParser.add_option(option)
OptionParser.add_option(*opt_str, attr=value, ...)
定义短选项
parser.add_option(“-f”, attr=value, …)
定义长选项
parser.add_option(“–foo”, attr=value, …)
如果定义
parser.add_option("-f", "--file", action="store", type="string", dest="filename")
命令行格式可以有以下形式
-ffoo
-f foo
--file=foo
--file foo
解析后结果
options.filename = “foo”
解析(parse_args())
(options, args) = parser.parse_args()
options 解析后的参数,以字典形式保存
args 不能解析的参数,以列表形式保存
行为(action)
store 默认行为,保存值到dest
“store_const” 保存常量
“append” append this option’s argument to a list
“count” increment a counter by one
“callback” call a specified function
设置默认值(default)
parser.add_option("-v", action="store_true", dest="verbose", default=True)
parser.set_defaults(verbose=True)
生成帮助提示(help)
提供help选项即可,可以用parser.print_help()打印出来
parser.add_option(“-f”, “–file”, dest=”filename”,help=”write report to FILE”, metavar=”FILE”)
设置boolean值
支持store_true和store_false两个行为
parser.add_option("-v", action="store_true", dest="verbose")
parser.add_option("-q", action="store_false", dest="verbose")
如果遇到-v,verbose=True;如果遇到-q,verbose=False
错误处理
(options, args) = parser.parse_args()
[...]
if options.a and options.b:
parser.error("options -a and -b are mutually exclusive")
选项组(Grouping Options)
格式如下
class optparse.OptionGroup(parser, title, description=None)
group = OptionGroup(parser, "Dangerous Options",
"Caution: use these options at your own risk. "
"It is believed that some of them bite.")
group.add_option("-g", action="store_true", help="Group option.")
parser.add_option_group(group)
提示结果如下
Usage: <yourscript> [options] arg1 arg2
Options:
-h, --help show this help message and exit
-v, --verbose make lots of noise [default]
-q, --quiet be vewwy quiet (I'm hunting wabbits)
-f FILE, --filename=FILE
write output to FILE
-m MODE, --mode=MODE interaction mode: novice, intermediate, or
expert [default: intermediate]
Dangerous Options:
Caution: use these options at your own risk. It is believed that some
of them bite.
-g Group option.
<script type="text/javascript">
$(function () {
$('pre.prettyprint code').each(function () {
var lines = $(this).text().split('\n').length;
var $numbering = $('<ul/>').addClass('pre-numbering').hide();
$(this).addClass('has-numbering').parent().append($numbering);
for (i = 1; i <= lines; i++) {
$numbering.append($('<li/>').text(i));
};
$numbering.fadeIn(1700);
});
});
</script>
版权声明:本文为博主原创文章,未经博主允许不得转载。
分享到:
相关推荐
Python的`optparse`模块是处理命令行参数的利器,尤其适合那些需要生成符合Unix/Posix标准选项规范的程序。在Python中,还有个较简单的`getopt`模块,但`optparse`因其强大的功能和易用性而更受欢迎。 `optparse`...
主要介绍了Python命令行参数解析模块optparse使用实例,本文讲解了增加选项(add_option())、行为(action)、设置默认值(default)、生成帮助提示(help)、设置boolean值、错误处理、选项组(Grouping Options)等内容,需要...
Python中的`optparse`模块是用于处理命令行选项和参数的工具,它是Python标准库的一部分。这个模块使得在命令行接口(CLI)的程序中添加和解析参数变得简单且易于理解。下面我们将深入探讨`optparse`的工作原理以及...
Python的`optparse`模块是Python 2.x版本中用于处理命令行选项的工具,它提供了方便的方式来定义、解析和验证命令行参数。在Python 3.x中,`optparse`已被更强大的`argparse`模块所替代,但对仍在使用Python 2.x的...
Commando 灵感来自于 Python 的 optparse 模块 以及 JewelCli Java 库,是一个用来定义以及解析 命令行参数的Python工具包。 标签:Commando
Python-Nmap 模块探测主机 445 端口的开放状态 Python-Nmap 模块是 Python 的一个模块库,使用这个模块可以让 Python 很方便的操作 Nmap 扫描器来工作。Nmap 是一个网络连接扫描软件,用来扫描网络上的电脑开放的...
`optparse`模块是Python中用于解析命令行选项的一个强大工具,它允许开发者以直观的方式定义和解析命令行参数。下面将详细介绍如何使用`optparse`模块,并通过一个示例来具体说明其工作原理。 ##### 初始化`...
`optparse`模块,用于命令行选项解析;`anydbm`和`dbm.gnu`模块,为通用数据库接口提供了更多选择。 4. **性能优化**:Python 2.4对解释器进行了优化,提高了运行速度,尤其是对于循环和函数调用。同时,C扩展模块...
该模块是用于命令行参数的解析,它是用于替换旧的`optparse`模块,允许用户编写用户友好的命令行接口。介绍了如何开始使用`argparse`,添加参数,处理短选项和长选项以及冲突选项,并在章节的最后进行总结。这些知识...
5. optparse.py:这是一个命令行选项解析模块,帮助开发者构建命令行接口,接受和解析用户输入的参数。不过在Python 3中,这个模块已被更新的`argparse`模块替代。 6. subprocess.py:`subprocess`模块允许创建新的...
3. **新增模块和库**:Python 2.5添加了一些新的标准库,如`argparse`(虽然在2.7版本中才成为标准),用于命令行参数解析,以及`optparse`,一个早期的命令行选项解析库。 4. **异常处理**:Python 2.5改进了异常...
- 标准库扩展:增加了许多新的模块,如sqlite3(轻量级数据库接口)、optparse(命令行选项解析)和decimal(高精度浮点数运算)等。 - 性能优化:针对某些常见操作进行了性能提升,例如字符串操作和列表处理。 5...
此外,`optparse`模块为命令行选项解析提供了便利。 4. **错误处理**:Python 2.5.4对错误处理进行了改进,提高了异常处理的效率,并修复了许多已知的bug。 5. **C API增强**:对于开发者来说,C API的更新使得与...
模块的设计灵感来源于optparse模块,这是一个用于处理命令行选项、参数和子命令的Python标准库。optparse模块以其简洁的API和强大的功能而受到开发者喜爱,Python配置解析器模块在API设计上也力求保持类似的理念,以...
`optparse`模块则简化了命令行选项解析。 7. **多线程(Multithreading)**:Python 2.4在多线程编程方面也有所改进,尽管GIL(全局解释器锁)仍然存在,但对线程的管理和同步有了更好的支持。 8. **Unicode支持**...
- 引入了`argparse`模块,这是一个命令行参数解析库,替代了之前的`optparse`,提供了更灵活的接口和更好的用户体验。 2. **语法改进**: - `with`语句的增强:Python 2.6.1支持了`with`语句,提供了一种优雅的...
`optparse`模块用于解析命令行参数,帮助处理脚本的输入选项。 #### 8.11 `itertools`模块 `itertools`模块提供了迭代器工具,如无限迭代器、组合生成器等,用于高效的数据迭代处理。 ### 九、字符串和正则表达式...
PS:optparse包是类似的功能,只不过写起来更麻烦一些。 如果脚本很简单或临时使用,没有多个复杂的参数选项,可以直接利用sys.argv将脚本后的参数依次读取(读进来的默认是字符串格式)。比如如下名为test.py的脚本:...
7. **标准库增强**:包括`json`模块的添加,用于JSON数据的编码和解码,以及`optparse`模块,提供了命令行选项解析的便利。 8. **AMD64支持**:这个amd64版本是针对64位Windows系统的,能够充分利用64位计算机的...