📜  Python – 测试字典值列表中的第 K 个索引

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

Python – 测试字典值列表中的第 K 个索引

有时,在使用Python字典时,我们可能会遇到一个问题,我们需要测试是否通过字典,字典中所有值的第 k 个索引等于 N。这种问题可能发生在 Web 开发领域。让我们讨论一些可以解决这个问题的方法。

方法 #1:使用循环 + items()
上述功能的组合可以用来解决这个问题。在此,我们使用 items() 检查字典的所有项目,并使用循环来迭代字典键并测试是否相等。

# Python3 code to demonstrate working of 
# Test Kth index in Dictionary value list
# Using  items() + loop
  
# initializing dictionary
test_dict = {'Gfg' : [1, 4, 8], 'is' : [8, 4, 2], 'best' : [7, 4, 9]}
  
# printing original dictionary
print("The original dictionary : " + str(test_dict))
  
# initializing K 
K = 2
  
# initializing N 
N = 4
  
# Test Kth index in Dictionary value list
# Using  items() + loop
res = True
for key, val in test_dict.items():
    if val[K - 1] != N:
        res = False
  
# printing result 
print("Are all Kth index equal to N : " + str(res)) 
输出 :
The original dictionary : {'is': [8, 4, 2], 'best': [7, 4, 9], 'Gfg': [1, 4, 8]}
Are all Kth index equal to N : True

方法 #2:使用all() + 生成器表达式
上述功能的组合也可以用来解决这个问题。在此,我们使用 all() 来测试所有元素是否与 N 相等。

# Python3 code to demonstrate working of 
# Test Kth index in Dictionary value list
# Using all() + generator expression
  
# initializing dictionary
test_dict = {'Gfg' : [1, 4, 8], 'is' : [8, 4, 2], 'best' : [7, 4, 9]}
  
# printing original dictionary
print("The original dictionary : " + str(test_dict))
  
# initializing K 
K = 2
  
# initializing N 
N = 4
  
# Test Kth index in Dictionary value list
# Using all() + generator expression
res = all([val[K - 1] == N for idx, val in test_dict.items()])
  
# printing result 
print("Are all Kth index equal to N : " + str(res)) 
输出 :
The original dictionary : {'is': [8, 4, 2], 'best': [7, 4, 9], 'Gfg': [1, 4, 8]}
Are all Kth index equal to N : True