【发布时间】:2021-04-28 13:42:41
【问题描述】:
我试图从嵌套字典中获取任意值,但出现错误。
我的方法适用于一级dict,如下所示:
table = [
{
"A": 157,
"B": 221,
"C": 330,
"D": 380
},
{
"A": 510,
"B": 547,
"C": 660,
"D": 780
},
{
"A": 791,
"B": 1111,
"C": 1200,
"D": 3000
},
]
from operator import itemgetter
val = 525
for dv in table:
column_B = max(val, dv['B'])
if val <= dv['B']:
column_A = (dv['A'])
column_C = dv['C']
pct = dv['D']
break
但是如果我嵌套字典,我会得到一个错误。
table = [
"inner":{
{ "A": 157,
"B": 221,
"C": 330,
"D": 380
},
{
"A": 510,
"B": 547,
"C": 660,
"D": 780
},
{
"A": 791,
"B": 1111,
"C": 1200,
"D": 3000
},
}
]
上面的嵌套字典出现错误。我尝试了切片,甚至尝试了缩减功能,但无法让它发挥作用。我在这里做错了什么?
【问题讨论】:
-
能否请您也发布错误消息?
-
第二个不是有效的数据结构。
-
这能回答你的问题吗? TypeError: unhashable type: 'dict'
标签: python python-3.x dictionary hashtable