python字典问题

时间:2013-11-18 06:59:14

标签: python algorithm dictionary

我在理解dictionaoris中的某些方面遇到了一些困难。 如果我有一个这样的大词典:

d = {'k1': ['v1', 'v2'], 'k2': ['v3'], 'k3': ['v4', 'v5', 'v6'], 'k4': ['v7', 'v8'], 'k5': ['v9', 'v10']}

现在,我想创建一个函数:

def a_func(d)

该函数将检查是否至少有一个键(k1 / k2 / k3 ...)是另一个键的值,然后检查“另一个键”是否为“第一把钥匙“。 如果是,则打印“确定”。

现在,我想到了:

for key1 in d.items():
    for key2 in d[i+1]:
        if d[key1] == d[key2]:
            print "OK"

但它不能很好地运作。 有什么帮助吗?

1 个答案:

答案 0 :(得分:1)

请记住dict.items()返回一个元组列表,其中元组中的第一个值是键,第二个值是值。

尝试:

def a_func(d):
    for k, v in d.items():
        for k2, v2 in d.items():
            if k in v2 and k2 in d[k]:
                return "OK"