是否可以从嵌套字典中删除顶级键并保留值?

时间:2018-03-18 06:15:42

标签: python-3.x dictionary nested

带有要删除的键的嵌套字典的示例。

{1: {'Email': 'JohnDoe@email.com',
     'FirstName': 'John',
     'Id': {'Value': 1},
     'LastName': 'Doe',
     'UserName': 'JohnDoe'},
 2: {'Email': 'JaneDoe@email.com',
     'FirstName': 'Jane',
     'Id': {'Value': 2},
     'LastName': 'Doe',
     'UserName': 'JaneDoe'},
 3: {'Email': 'FredDoe@email.com',
     'FirstName': 'Fred',
     'Id': {'Value': 1},
     'LastName': 'Doe',
     'UserName': 'FredDoe'}}

是否可以删除数字键并保存字典,如下所示?

   {{'Email': 'JohnDoe@email.com',
     'FirstName': 'John',
     'Id': {'Value': 1},
     'LastName': 'Doe',
     'UserName': 'JohnDoe'},
    {'Email': 'JaneDoe@email.com',
     'FirstName': 'Jane',
     'Id': {'Value': 2},
     'LastName': 'Doe',
     'UserName': 'JaneDoe'},
    {'Email': 'FredDoe@email.com',
     'FirstName': 'Fred',
     'Id': {'Value': 1},
     'LastName': 'Doe',
     'UserName': 'FredDoe'}}

2 个答案:

答案 0 :(得分:0)

我认为你想创建一个只包含键而不是键和值的字典

答案 1 :(得分:0)

假设字典在变量d中,您所要做的就是d.values(),它将为您提供字典中每个key, value对的值:

>>> d = {1: {'Email': 'JohnDoe@email.com', 'FirstName': 'John', 'Id': {'Value': 1}, 'LastName': 'Doe', 'UserName': 'JohnDoe'}, 2: {'Email': 'JaneDoe@email.com', 'FirstName': 'Jane', 'Id': {'Value': 2}, 'LastName': 'Doe', 'UserName': 'JaneDoe'}, 3: {'Email': 'FredDoe@email.com', 'FirstName': 'Fred', 'Id': {'Value': 1}, 'LastName': 'Doe', 'UserName': 'FredDoe'}}
>>> l = list(d.values())
>>> l
[{'Email': 'JohnDoe@email.com', 'FirstName': 'John', 'Id': {'Value': 1}, 'LastName': 'Doe', 'UserName': 'JohnDoe'}, {'Email': 'JaneDoe@email.com', 'FirstName': 'Jane', 'Id': {'Value': 2}, 'LastName': 'Doe', 'UserName': 'JaneDoe'}, {'Email': 'FredDoe@email.com', 'FirstName': 'Fred', 'Id': {'Value': 1}, 'LastName': 'Doe', 'UserName': 'FredDoe'}]