有没有更好的方法来编写以下内容:
if "msg" in response_dic or "save_act_errors" in response_dic or "add_act_errors" in response_dic or "modif_act_errors" in response_dic or "update_act_errors" in response_dic:
#do stuff
response_dic
是一本字典,我正在检查密钥。
事实上有两个问题:
1 /如何在字典中测试多个键?
2 /如何检查部分键(在我的情况下以“_act_errors”结束)?
答案 0 :(得分:2)
>>> keys = ['msg','save_act_errors']
>>> d = { 'msg':1 }
>>> any(key in d for key in keys)
True
或
>>> keys | set(d)
答案 1 :(得分:2)
是的!还有更好的方法:
keys = ["msg", "save_act_errors", "add_act_errors", "modif_act_errors", ...]
if any(key in response_dic for key in keys):
#do stuff