循环返回dict中的值的列表

时间:2013-06-12 19:02:46

标签: python list loops dictionary

我正在尝试从列表中读取并在dict中返回相应的值。 我帮我错了。 谢谢

DICT = {"b": "21", "g": "54", "f": "121", "t": "1", "j": "33"}
n = ['b', 'w', 'f']

for keys in n:
    if keys in n:
        if n == DICT.keys():
            print(DICT.values())
        else:
            if keys not in n:
                print('Not Available')

6 个答案:

答案 0 :(得分:1)

for key in n:
    if key in dict.keys():
        print(dict[key])

似乎这就是你要做的事情

答案 1 :(得分:1)

如果您使用get

,则非常简单
for k in n:
    print(DICT.get(k, 'Not Available'))

答案 2 :(得分:0)

如果使用get()方法,这将更容易:

DICT = {"b": "21", "g": "54", "f": "121", "t": "1", "j": "33"}
n = ['b', 'w', 'f']


for key in n:
    if DICT.get(key):
        print(DICT[key])
    else:
        print("Not available")

它产生了以下输出:

  

21
不适用
121

答案 3 :(得分:0)

你正在迭代n的所有元素,但是检查n是否是每个循环的字典的所有键,它不是。试着这样做:

for key in n:
    if key in DICT:
        print(DICT[key])
    else:
        print('not available')

答案 4 :(得分:0)

>>>for keys in n:
       if keys in DICT.keys():
           print DICT[keys]
       else:
           print ('Not Available')

21
Not Available
121

答案 5 :(得分:0)

print '\n'.join((DICT[key] for key in n if key in DICT))