我有一个字典,其中包含一组键值对,其中值是一个列表,如下所示:
my_dict = {7: [6, 13], 6: [7, 8, 9, 11, 13, 14], 8: [6, 14], 9: [6], 11: [6], 13: [6, 7], 14: [6, 8]}
我想检查哪些列表中包含值“6”,并返回对应于匹配项的键(即7、8、9、11、13和14)。
我尝试了以下代码:
def find_key_for(input_dict, value):
for k, v in input_dict.items():
if v == value:
yield k
else:
return "None"
keys = list(find_key_for(my_dict, 6))
但它返回以下错误:
ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()
我该如何解决这个问题,以便返回所有包含此值的列表的键?谢谢
numpy.ndarray
对象。不过,无论是list
还是numpy.ndarray
对象,你都想使用v in value:
。 - juanpa.arrivillaga