【发布时间】:2020-06-26 09:10:30
【问题描述】:
我想创建一个函数来查找字典中包含的与字符串中的字母匹配的值的键。 这是我的字典:
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'}
如何实现我想要的输出?
【问题讨论】:
-
您的函数 guess_character 中没有 return 语句。
-
@Ch3steR 感谢您指出这一点!我现在已经添加了它,但它仍然打印
None
标签: python python-3.x string function dictionary