Python getopt - 如何检查不同可能的参数组合?

如何使用 getopt 以便我可以按每个可能的顺序检查 2 个参数的每个有效组合?


例如:


try:

opts, args = getopt.getopt(argv,"a:b")

except getopt.GetoptError:

  try:

    opts, args = getopt.getopt(argv,"a:c")

  except:

    sys.exit(1)

例如,输入可以是script.py -a avalue -b bvalue或script.py -a avalue -c cvalue。a 和另一个参数的位置也可以颠倒。


但在执行脚本时我只会得到令人困惑的值


慕神8447489
浏览 112回答 1
1回答

江户川乱折腾

首先,你可能想看看argparse。需要更多的手动阅读才能开始,但它可以做更多的事情!对于getopt,开关始终是可选的,并且始终可以按任何顺序出现。即,如果你这样做opts, args = getopt.getopt(argv, "a:b:c:")用户可以按任何顺序给出-a avalue、-b bvalue、 和-c cvalue,并省略其中任何一个或全部。另外,请注意,getopt不希望在参数列表中找到程序名称,这意味着您通常希望传递argv[1:].
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python