pythongetop中的多字符命令解析

2024-04-19 15:14:14 发布

您现在位置:Python中文网/ 问答频道 /正文

我一直在使用pythongetopt进行解析,无论是短解析还是长解析,都非常有效。现在我需要在getopt函数中添加一些短变量,如果需要多个字符作为短。有没有办法做这样的事。在

getopt.getopt(argv,"hf:c:d:pv:pz:","")

这里,我需要将pv和pz作为单独的命令行参数来访问,而不是getopt将其读作“p with no args”、“v with one args”。我尝试了引号中的'pv:'[pv:],但它识别出了pv,但没有读取args。在

另外,(另一方面)同一个参数是否可能有多个输入。请原谅,这是一个很简单的回答。在


Tags: 函数no命令行参数withargs字符one
1条回答
网友
1楼 · 发布于 2024-04-19 15:14:14

根据我对文档和研究的理解,我在需要和你一样的东西时,没有办法做到。^带前缀“-”的{}只能处理一个字符,对于多个字符,必须使用longopts,它使用前缀“”。在

Python3的例子:

import sys, getopt

try:
    opts, args = getopt.getopt(sys.argv[1:], 'c:d:', ['hf','pv','pz'])
except getopt.GetoptError as e:
    print(str(e))

for o, a in opts:
    print(o, ':', a)

不幸的是,我认为没有办法将longopts与一个必需的参数放在一起,但是这可以通过手动检查来解决。在

如需了解更多信息,我建议查阅文档: https://docs.python.org/3.1/library/getopt.html

相关问题 更多 >