在我创建了参数解析器之后。如何检查解析器是否包含参数规则。这里有一些代码来解释我的意思。
from argparse import ArgumentParser
parser = ArgumentParser()
parser.add_argument('--foo')
parser.add_argument('--bar')
'foo' in parser
# => True
'bar' in parser
# => True
'baz' in parser
# => False简而言之,我想知道解析器中是否存在参数。
作为程序初始化的一部分,我加载了几个配置文件。如果配置文件中有不在解析器中的设置,我想警告用户。
发布于 2016-10-15 03:16:19
这有点笨拙,但您可以在不带参数的情况下运行parse_args,并提取生成的Namespace对象的键:
>>> 'foo' in vars(parser.parse_args())
True
>>> 'baz' in vars(parser.parse_args())
Falsehttps://stackoverflow.com/questions/40050355
复制相似问题