我有一本字典:
dict = {
"Bolig":[
{
"Internal_id":27698,
"Title":"Thorshammer 95 7500 Holstebro",
"Area":87.0,
"Rent":6295.0,
"Room":4
}
],
"Contact":[
{
"Name":"John Doe",
"Email":"doe@gmail.com",
"Phone":"33751010212"
}
]
}
我想提取其中一个键的值:例如,Internal_id
键的值为27698。
我试图通过以下方式将词典合并为一个dict
:
new_dict = {key: value for r in dict for key,value in r.iteritems()}
但我有一个错误:
AttributeError: 'str' object has no attribute 'iteritems'
我有没有办法做到这一点
我们需要一个接一个地瞄准每一层,第一层是一个字典,所以我们使用键瞄准嵌套字典,在本例中是“Bolig”或“Contact”。然后我们使用[]方括号访问列表并传入索引。最后,我们将属性定位在最里面的字典中
现在,我们知道了如何访问每个字典和列表,您就可以了解如何使用循环自动执行这些操作
词典中的理解
r
是dict
的键,在您的例子中是字符串。您可以将此更改为for r in dict
将迭代字典的键:"Bolig"
和"Contact"
。因此,r
将是一个字符串,而字符串没有iteritems
方法(Python 3中的字典也没有-您应该改用items
)您应该迭代
dict
的缝合在一起的值:或者,如果字典的每个值都保证是一个元素的列表:
相关问题 更多 >
编程相关推荐