Python|测试元组键字典中是否存在键
有时,在处理字典数据时,我们需要检查字典中是否存在特定键。如果键是基本的,则讨论的问题的解决方案更容易解决。但有时,我们可以将元组作为字典的键。让我们讨论可以执行此任务的某些方式。
方法 #1:使用any()
+ 生成器表达式
上述功能的组合可用于执行此任务。在此,我们检查目标键的每个键内的每个元素。 any() 用于检查字典的任何键。
# Python3 code to demonstrate working of
# Test if key exists in tuple keys dictionary
# using any() + generator expression
# initialize dictionary
test_dict = {(4, 5) : '1', (8, 9) : '2', (10, 11) : '3'}
# printing original dictionary
print("The original dictionary : " + str(test_dict))
# Test key
key = 10
# Test if key exists in tuple keys dictionary
# using any() + generator expression
res = any(key in sub for sub in test_dict)
# printing result
print("Does key exists in dictionary? : " + str(res))
输出 :
The original dictionary : {(4, 5): '1', (8, 9): '2', (10, 11): '3'}
Does key exists in dictionary? : True
方法 #2:使用from_iterable()
也可以使用此函数执行此任务。在此,我们将密钥展平,然后检查是否存在。
# Python3 code to demonstrate working of
# Test if key exists in tuple keys dictionary
# using from_iterable()
from itertools import chain
# initialize dictionary
test_dict = {(4, 5) : '1', (8, 9) : '2', (10, 11) : '3'}
# printing original dictionary
print("The original dictionary : " + str(test_dict))
# Test key
key = 10
# Test if key exists in tuple keys dictionary
# using from_iterable()
res = key in chain.from_iterable(test_dict)
# printing result
print("Does key exists in dictionary? : " + str(res))
输出 :
The original dictionary : {(4, 5): '1', (8, 9): '2', (10, 11): '3'}
Does key exists in dictionary? : True