`
Ydoing
  • 浏览: 106176 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

Python解析命令行参数模块getopt

 
阅读更多

格式

getopt(args, options[, long_options])

1.args表示要解析的参数.
2.options表示脚本要识别的字符.字符之间用”:”分隔,而且必须要以”:”后结尾,例如”a:b:c:”.
3.long_options是可选的,如果指定的话,可以解析长选项.形式为字符串列表,如[‘foo=’, ‘frob=’].长选项要求形式为”–name=value”
4.该方法返回2个元素.第一个元素是列表对, 对中第一个值是带有”-“或者”–”的选项名,第二个值是选项的值.第二个元素是options减去第一个元素的后的值,即不能识别的值.

如果要求只能解析长选项的话,options必须为空.只要指定了参数名,就必须传入参数,不支持可有可无的参数.

短选项实例

import getopt

short_args = '-a 123 -b boy -c foo -d 2.3 unkown'.split()
print short_args

optlist, args = getopt.getopt(short_args, 'a:b:c:d:')
print optlist
print args

输出

['-a', '123', '-b', 'boy', '-c', 'foo', '-d', '2.3', 'unkown']
[('-a', '123'), ('-b', 'boy'), ('-c', 'foo'), ('-d', '2.3')]
['unkown']

长选项实例

import getopt

long_args = '--a=123 --b unkown'.split()
optlist, args = getopt.getopt(long_args, '', ['a=', 'b'])
print optlist
print args

输出

[('--a', '123'), ('--b', '')]
['unkown']

长短选项结合实例

import getopt

s = '--condition=foo --testing --output-file abc.def -x a1 unknown'
args = s.split()
optlist, args = getopt.getopt(args, 'x:', ['condition=', 'output-file=', 'testing'])
print optlist
print args

输出

[('--condition', 'foo'), ('--testing', ''), ('--output-file', 'abc.def'), ('-x', 'a1')]
['unknown']
<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命令行参数解析模块getopt使用实例

    本文主要针对Python命令行参数解析模块getopt进行详细介绍,并通过实例演示其使用方法,包含短选项参数解析实例、长选项参数解析实例,以及长短选项结合解析实例。 getopt模块是Python标准库中用于处理命令行参数的...

    python解析命令行参数的三种方法详解

    本文将详细讲解Python解析命令行参数的三种常见方法:sys.argv、argparse模块和getopt模块。 1. **sys.argv**: `sys.argv` 是一个包含命令行参数的列表。第一个元素`sys.argv[0]`是脚本的名称(即Python解释器...

    python 命令行参数

    `optparse`模块是Python中用于解析命令行选项的一个强大工具,它允许开发者以直观的方式定义和解析命令行参数。下面将详细介绍如何使用`optparse`模块,并通过一个示例来具体说明其工作原理。 ##### 初始化`...

    Python命令行解析模块详解

    这个模块可以帮助脚本解析命令行参数,一般是sys.argv[1:]。它遵循着Unix的getopt()函数相同的约定(用-/–指定命令参数)。这个模块提供两个函数(getopt.getopt()/getopt.gnu_getopt())和一个参数异常(getopt....

    Python-Python实现的Google命令行标志模块

    3. 解析命令行:在主程序中,GFlags会自动解析命令行参数并更新对应的标志变量。 4. 使用标志:之后,开发者就可以在程序的任何地方使用这些标志变量,根据用户的输入来调整程序的行为。 在"google-python-gflags-...

    Python参数解析模块sys、getopt、argparse使用与对比分析

    3. **`argparse`**:是功能最全面的命令行参数解析模块,可以自动解析命令行参数并生成帮助文档,特别适合构建复杂的命令行工具。 在实际应用中,可以根据项目的需求选择合适的模块。对于简单的脚本,`sys`和`...

    20120906_命令行参数解析1

    Python则提供了`argparse`模块来解析命令行参数,而Go语言中,可以使用`flag`包来处理命令行参数。 总的来说,`getopt`函数是处理命令行参数的一个强大工具,它在不同编程语言和环境中都有相应的实现。理解其工作...

    python实现读取命令行参数的方法

    通过`getopt.getopt`函数解析命令行参数。`getopt.getopt`函数的第一个参数是`sys.argv[1:]`,这表示我们要处理的参数列表,排除了脚本本身的名字。第二个参数是一个字符串,用于指定命令行选项的格式。 在这个例子...

    Python 获得命令行参数的方法(推荐)

    `getopt`模块则提供了一种更规范的方式来解析命令行选项,它遵循GNU标准的命令行选项解析规则。这个模块适用于处理带有选项(如`-i`, `-o`)的参数,可以区分开关选项(不需要附加参数)和带参数的选项。 `getopt....

    Python中最好用的命令行参数解析工具(argparse)

    Python 本身就提供了三个命令行参数解析模块,我这里罗列一下它们的大致情况供你了解。 getopt,只能简单的处理命令行参数 optparse,功能强大,易于使用,可以方便地生成标准的、符合Unix/Posix 规范的命令行说明...

    python获得命令行输入的参数的两种方式

    `getopt()` 函数按照特定格式解析命令行参数,支持短选项和长选项。 短选项是单个字符前缀,通常用 `-` 开头,如 `-i`。如果选项需要参数,可以跟随冒号 `:`,如 `-o:` 表示 `-o` 选项需要一个参数。长选项使用 `-...

    python getopt模块使用实例解析

    Python的`getopt`模块是处理命令行参数的工具,它提供了一种简单的方法来解析命令行选项。在Python程序中,尤其是那些需要接收用户输入参数的脚本,`getopt`模块非常有用。它提供了两个主要的函数:`getopt.getopt()...

    python optparse命令解析模块.docx

    `parse_args()`方法用于解析命令行参数,返回一个元组`(options, args)`,`options`是一个包含所有选项值的对象,`args`是未被选项占用的位置参数列表。 `action`参数有多种类型: - `action='store'`:默认类型,...

    Python-用Bash编写漂亮的命令行程序

    Python在命令行工具开发中,通常使用argparse模块来解析命令行参数。但通过Bash,我们可以更直接地处理这些参数,例如通过Bash的`case`语句来实现复杂的选项处理。这种方式可以减少Python代码量,提高执行效率。 在...

    Python中的getopt函数使用详解

    对于需要处理命令行参数的应用程序来说,`getopt`提供了非常便捷的方式来解析命令行参数,使得开发者能够更加专注于应用程序核心功能的开发。`getopt`模块的主要功能是将命令行参数分解成选项和非选项部分,并对选项...

Global site tag (gtag.js) - Google Analytics