)编写一个函数find_keys(dic, value),功能:以列表的形式返回字典dic中所有值是value的键(key),注意值很需要进行类型判断,如果dic中没有键值对的值是value,返回空列表。例如: find_indexes({‘a’: 1, ‘b’: 1, ‘c’: ‘2’, ‘d’: 3}, 2)结果为[] find_indexes({‘a’: 1,‘ b’: 1,‘ c’: ‘2’, ‘d’: 3}, 1)结果为[‘a’, ‘b’] find_indexes({‘a’: 1,‘ b’: 1,‘ c’: ‘2’, ‘d’: 3}, ‘2’)结果为[‘c’]
时间: 2023-06-07 08:10:10 浏览: 65
有返回值的函数
好的,理解了您的要求。下面是我的回答:
这是一个比较简单的函数:
def find_keys(dic, value):
keys = []
for key in dic:
if type(dic[key]) == type(value) and dic[key] == value:
keys.append(key)
return keys
其中,type()函数可以获取变量的类型,如果字典中某个键的值类型与传入的value相同,并且键的值等于value,就把这个键添加到keys列表中。
下面是一些测试样例:
print(find_keys({'a': 1, 'b': 1, 'c': '2', 'd': 3}, 2))
print(find_keys({'a': 1, 'b': 1, 'c': '2', 'd': 3}, 1))
print(find_keys({'a': 1, 'b': 1, 'c': '2', 'd': 3}, '2'))
print(find_keys({'a': 1, 'b': 1, 'c': '2', 'd': 3}, 4))
输出结果分别为:
[]
['a', 'b']
['c']
[]
希望我回答得满意,请问还有其他问题吗?
阅读全文