我试图检查一个字符串是 字典中的一个键。
if message in a_dict: # this will only work if message is exactly one of the keys
#do stuff
我希望条件返回True
,即使message
只是a_dict
个密钥之一的部分。
我该怎么做?有没有办法在字符串中添加正则表达式.*
?或者有更好的方法吗?
答案 0 :(得分:8)
您可以使用any
:
elif any(message in key for key in a_dict):
do_something()
如果您还需要包含消息的密钥:
else:
key = next((message in key for key in a_dict), None)
if key is not None:
do_something(key)
答案 1 :(得分:0)
您可以通过Python in
运算符真正做到您想要的。最好手动进行检查 - 迭代所有密钥,看看是否有任何密钥包含message
。