背景
在Jupyter Notebook中执行如下代码:
import argparse
def get_parser():
# 创建ArgumentParser对象并添加描述信息
parser = argparse.ArgumentParser(description="Demo of argparse")
# 添加参数处理
parser.add_argument('--name', default='Huhun')
return parser
parser = get_parser()
args = parser.parse_args(args=[])
print(args['name'])
结果报错:
解决方法
错误原因是'Namespace'是不具有下标操作的对象,不能通过索引取值。
在最后一行之前添加:args = {**vars(args)} ,将args转换成字典类型。
成功: