Python argaprse可选参数处理



因此,我有一个用于解析和绘制文本文件数据的python脚本。参数处理是通过argparse模块完成的。问题是,有些参数是可选的,例如其中一个用于在情节上添加文本注释。这个参数通过**kwargs发送给绘图函数。我的问题是——处理这些可选参数的最python的方法是什么?下面是一些伪代码:

parser = argparse.ArgumentParser()
...
parser.add_argument("-o", "--options", nargs="+", help="additional options")
args = parser.parse_args()
...
def some_function(arguments, **kwargs):
   doing something with kwargs['options']
   return something
...
arguments = ...
some_function(arguments, options=args.options)

如果默认不指定选项,则不赋值。这也带来了一些问题。什么是更python -以某种方式检查some_function中的'options' ?或者在some_function被调用之前解析参数?

您可以直接提供一个显式的空列表作为默认值。

parser.add_argument("-o", "--options", nargs="+", default=[])

如果在字典中没有找到键,则使用get并设置默认值

def some_function(arguments, **kwargs):
   something = kwargs.get('options', 'Not found')
   return something

或if语句

if 'option' in kwargs:
    pass # do something

相关内容

  • 没有找到相关文章

最新更新