📜  Python|测试元组键字典中是否存在键

📅  最后修改于: 2022-05-13 01:55:05.756000             🧑  作者: Mango

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