通过Python Dict迭代特定值

通过Python Dict迭代特定值,python,pandas,dictionary,Python,Pandas,Dictionary,我使用的是Python 3.6,我有这样一本字典: { "TYPE": { "0": "ELECTRIC", "1": "ELECTRIC", "2": "ELECTRIC", "3": "ELECTRIC", "4": "TELECOMMUNICATIONS" }, "ID": { "0": 13, "1": 13, "2": 13,

我使用的是Python 3.6,我有这样一本字典:

{
    "TYPE": {
        "0": "ELECTRIC",
        "1": "ELECTRIC",
        "2": "ELECTRIC",
        "3": "ELECTRIC",
        "4": "TELECOMMUNICATIONS"
    },
    "ID": {
        "0": 13,
        "1": 13,
        "2": 13,
        "3": 13,
        "4": 24
    },
    "1/17/2019": {
        "0": 23,
        "1": 23,
        "2": 23,
        "3": 23,
        "4": 1
    },
    "DATE": {
        "0": "1/17/2019",
        "1": "2/28/2019",
        "2": "3/5/2019",
        "3": "3/28/2019",
        "4": "1/1/2019"
    }
}
我如何迭代该函数并仅访问
实用程序类型
ID
的值?我的目标是将它们附加到一个列表中,如so
[[ELECTRIC,13],[ELECTRIC,13],…]

到目前为止,我已经能够访问如下值:

for key, value in addresses.items():
    if key == 'UTILITY TYPE':
        for k, v in value.items():
            print(v)
    elif key == 'ID':
        for k, v in value.items():
            print(v)
但是我不知道如何将
v
的值附加到我的列表中。

解决方案 您可以使用
pandas
库来完成此操作。此外,考虑尝试<代码> Pd。DataFrame(d)< /Cord>查看它是否对您有任何用处(因为我不知道您的最终用例)。
将熊猫作为pd导入
#d是你的字典吗
df=pd.DataFrame(d).T
columns=df.columns
labels=df.index.tolist()
打印('标签:{}\n'。格式(标签))
[df[x].tolist()表示列中的x]
输出

labels: ['TYPE', 'ID', '1/17/2019', 'DATE']

[['ELECTRIC', 13, 23, '1/17/2019'],
 ['ELECTRIC', 13, 23, '2/28/2019'],
 ['ELECTRIC', 13, 23, '3/5/2019'],
 ['ELECTRIC', 13, 23, '3/28/2019'],
 ['TELECOMMUNICATIONS', 24, 1, '1/1/2019']]
虚拟数据
d={
“类型”:{
“0”:“电动”,
“1”:“电气”,
“2”:“电气”,
“3”:“电气”,
“4”:“电信”
},
“ID”:{
"0": 13,
"1": 13,
"2": 13,
"3": 13,
"4": 24
},
"1/17/2019": {
"0": 23,
"1": 23,
"2": 23,
"3": 23,
"4": 1
},
“日期”:{
"0": "1/17/2019",
"1": "2/28/2019",
"2": "3/5/2019",
"3": "3/28/2019",
"4": "1/1/2019"
}
}
解决方案 您可以使用
pandas
库来完成此操作。此外,考虑尝试<代码> Pd。DataFrame(d)< /Cord>查看它是否对您有任何用处(因为我不知道您的最终用例)。
将熊猫作为pd导入
#d是你的字典吗
df=pd.DataFrame(d).T
columns=df.columns
labels=df.index.tolist()
打印('标签:{}\n'。格式(标签))
[df[x].tolist()表示列中的x]
输出

labels: ['TYPE', 'ID', '1/17/2019', 'DATE']

[['ELECTRIC', 13, 23, '1/17/2019'],
 ['ELECTRIC', 13, 23, '2/28/2019'],
 ['ELECTRIC', 13, 23, '3/5/2019'],
 ['ELECTRIC', 13, 23, '3/28/2019'],
 ['TELECOMMUNICATIONS', 24, 1, '1/1/2019']]
虚拟数据
d={
“类型”:{
“0”:“电动”,
“1”:“电气”,
“2”:“电气”,
“3”:“电气”,
“4”:“电信”
},
“ID”:{
"0": 13,
"1": 13,
"2": 13,
"3": 13,
"4": 24
},
"1/17/2019": {
"0": 23,
"1": 23,
"2": 23,
"3": 23,
"4": 1
},
“日期”:{
"0": "1/17/2019",
"1": "2/28/2019",
"2": "3/5/2019",
"3": "3/28/2019",
"4": "1/1/2019"
}
}


你能展示一下你的角色所做的努力吗?是的,现在添加。你能展示一下你的角色所做的努力吗?是的,现在添加。
x = [[d["TYPE"][key], d["ID"][key]] for key in d["TYPE"]]