[英]Checking if variable exists in Namespace
我正在尝试使用argparse的输出(仅带有4个位置参数的简单argparse,每个位置的函数取决于设置为True的变量)
Namespace(battery=False, cache=True, health=False, hotspare=False)
目前,我正在尝试找出如何最好地让python查看这些变量之一何时设置为True的方法。 无需像现在这样硬编码:
if args.battery is True:
do_something()
elif args.cache is True:
do_something_else()
etc ...
我宁愿只使用一个命令来检查名称空间中是否存在变量,以及该变量是否设置为True; 但是我无法终生思考如何有效地做到这一点。
如果使用列表理解解决了我的问题(使用技巧使用vars()之后):
l = [ k for (k,v) in args.items() if v ]
l是字典中具有“ True”值的键的列表
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.