Luc*_*fer 3 python string argparse
如果我执行args.svc_name,则期望与args.option1等效,因为svc_name的值为option1。但是我收到“名称空间对象没有属性'svc_name's”的错误
parser = argparse.ArgumentParser(prog=None,description="test")
parser.add_argument("--option1", nargs="?",help="option")
args = parser.parse_args()
svc_name = "option1"
print (args.svc_name)
Run Code Online (Sandbox Code Playgroud)
有人可以帮我吗?
本ArgumentParser类公开密钥直接属性,而不是一个映射,因此要获得属性,直接人会简单地直接访问它。根据问题的示例,它就是
print(args.option1)
Run Code Online (Sandbox Code Playgroud)
如果希望使用其他变量(例如,svc_name来自问题)来存储属性/标志以从argparser获取值,只需使用将其转换为映射(即dict)vars,然后调用get方法
print(vars(args).get(svc_name))
Run Code Online (Sandbox Code Playgroud)
或者,getattr(args, svc_name)。
| 归档时间: |
|
| 查看次数: |
2949 次 |
| 最近记录: |