如何在 python 中循环 optparse.OptionGroup 值

发布于 2024-10-17 05:04:36 字数 747 浏览 1 评论 0原文

我正在尝试使用 optparse 在 python 中制作命令行工具 我有一组选项 optparse.OptionGroup 我不想循环来做任何事情......但我该怎么做? 我有:

usage = ("polotools [options]")
parser = optparse.OptionParser(version="polotools %s" % version, usage=usage)
parser.add_option('--amrsim', dest='amrsim', action='store_true',
    help=('Set amr simulation mode, skips if not present'))    

groupAMR = optparse.OptionGroup(parser,'AMR simulation:',
                "ATENTION: use these options only with --amrsim")
groupAMR.add_option('--Utility', dest='Utility', action='store',
    help=('Set utility rate for AMR simulation, accept dictionary'))

parser.add_option_group(groupAMR)

(options, args) = parser.parse_args()

但在选项中,所有选项都分组在一起..并且我不想只过滤 groupAMR 中的选项。

I'm trying to use optparse to make a command line tool in python
I have a group of options optparse.OptionGroup that I wan't to loop over to do whatever... but how do I do that ?
I have:

usage = ("polotools [options]")
parser = optparse.OptionParser(version="polotools %s" % version, usage=usage)
parser.add_option('--amrsim', dest='amrsim', action='store_true',
    help=('Set amr simulation mode, skips if not present'))    

groupAMR = optparse.OptionGroup(parser,'AMR simulation:',
                "ATENTION: use these options only with --amrsim")
groupAMR.add_option('--Utility', dest='Utility', action='store',
    help=('Set utility rate for AMR simulation, accept dictionary'))

parser.add_option_group(groupAMR)

(options, args) = parser.parse_args()

But in options all options get grouped togheter.. and I wan't to filter only the ones in groupAMR.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

友欢 2024-10-24 05:04:36

设置选项后,您可能想要这样的东西:

for groupAMR_arg in groupAMR.option_list:
    print getattr(options, groupAMR_arg.dest)

You probably want something like this after you set options:

for groupAMR_arg in groupAMR.option_list:
    print getattr(options, groupAMR_arg.dest)
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文