중첩 된 사전에서 임의의 값을 가져 오려고하는데 오류가 발생합니다. 내 접근 방식은 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
그러나 dicts를 중첩하면 오류가 발생합니다.
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
},
}
]
위의 중첩 된 사전에 오류가 발생합니다. 나는 슬라이싱을 시도했고, 심지어 기능 감소를 시도했지만이 지점에서 작동하지 못했습니다. 여기서 내가 뭘 잘못하고 있니?
[]
목록을 나타냅니다. {}
사전을 나타냅니다. 두 부분이 부분적으로 뒤섞인 것 같습니다. 의 순서를 table
이해하기 위해, table
사전해야하고, "inner"
목록이어야합니다.
# This has a key, therefore it's a dict.
table = {
# This has no keys, so it's a list.
"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
},
]
}
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다