Я хочу создать функцию для поиска ключа значений, содержащихся в словаре, который соответствует алфавитным буквам, найденным в строке. Это мой словарь:
dict = {'0': {'a','c','d','e','b','f'},
'1': {'c','b'},
'2': {'a','d','e','b','g'},
'3': {'a','c','d','b','g'},
'4': {'g','c','f','b'},
'5': {'a','c','d','g','f'},
'6': {'a','c','d','e','g','f'},
'7': {'a','c','b'},
'8': {'a','c','d','e','b','g','f'},
'9': {'a','c','d','b','g','f'}}
Это функция, которую я пытался создать до сих пор:
def guess_character(display, state):
for key, value in display.items():
if state == "".join(list(value)[:len(state)]):
return key
else:
pass
Когда я проверяю свою функцию с помощью следующих операторов печати:
print(guess_character(seven_segment, 'abed'))
print(guess_character(seven_segment, 'a'))
print(guess_character(seven_segment, 'abcdefg'))
Это мой токовый выход :
None
None
None
Однако, это мой желаемый выход :
{'2', '8', '0'}
{'5', '7', '6', '0', '3', '9', '2', '8'}
{'8'}
Как мне достичь желаемого результата?