gpt4 book ai didi

python - 从json加载时如何将字符串转换为列表

转载 作者:行者123 更新时间:2023-12-04 09:16:02 26 4
gpt4 key购买 nike

Json 在下面。从 json 加载后,我需要转换为列表。我越来越努力了

{
"1": {
"Data (L)": "[ { \"S\" : \"168\" }]"
},
"2": {
"Data (L)": "[ { \"S\" : \"169\" }]"
}
}

代码

with open('a.json') as f:
a = json.loads(f.read())
print (a)
data1 = []
for i,j in a.items():
data = {}
data['id'] = i
data1.append(data)
for k,l in j.items():
data[k] = l
print (type(l))
print (l)

我的类型 pf l 是 <class 'str'> l 的输出是[ { "S" : "168" }]

预计结束

打印类型(l) 必须是list 而不是str

最佳答案

我假设您有双重编码的 json。只需对第二个字典的值调用另一个 json.loads():

import json

json_text = r'''{
"1": {
"Data (L)": "[ { \"S\" : \"168\" }]"
},
"2": {
"Data (L)": "[ { \"S\" : \"169\" }]"
}
}'''

data = json.loads(json_text)

for k, v in data.items():
for kk, vv in v.items():
vv = json.loads(vv)
print(type(vv))
print(vv)

打印:

<class 'list'>
[{'S': '168'}]
<class 'list'>
[{'S': '169'}]

关于python - 从json加载时如何将字符串转换为列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63213055/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com