Да, вы можете просто использовать in
, если текст для поиска является точной подстрокой одного из значений:
def search_dict(d, needle):
return [k for k, v in d.items() if needle in v]
d = {'Key1':'Akins, Richard A. ', 'Key2':'Frederic, Matthew B. ', 'Key3':'Freeman, Gordon J. '}
print(search_dict(d, "Richard"))
Если вам нужно только вернуть первый ключ, который вы можете сделать:
def search_dict(d, needle):
for k, v in d.items():
if needle in v:
return k