首页 > 解决方案 > 将字典键移动到特定值的列表

问题描述

我试图使这段代码工作:

civil_freq= {   '430.00': ['aaa'], 
                '430.02': ['aaa'], 
                '430.04': ['aaa'], 
                '430.06': ['bbb'], 
                '430.08': ['bbb'], 
                '430.10': ['bbb'], 
                '430.12': ['none'], 
                '430.14': ['none']}
person_freq=[]
person = 'bbb'
for key in civil_freq:
    if civil_freq[key] == person:
        person_freq.append(civil_freq.get(key))

print(person_freq)

它返回空列表,但我需要像

['430.06', '430.08', '430.10']

标签: python-3.xlistdictionary

解决方案


问题:您将人员姓名存储在列表中(在您的civil_freq字典中),但将其与字符串(变量person)进行比较。这种比较是行不通的。

尝试这个:

person = ["bbb"]
for k, v in civil_freq.items():
    if v == person:
        person_freq.append(k)

print(person_freq)

或将字典中的值从列表更改为字符串!


推荐阅读