【发布时间】:2020-06-02 14:59:48
【问题描述】:
我正在尝试从如下所示的 JSON 对象将数据放入 SAMPLES 和 LABELS 变量中。
{
"samples": [
[
28,
25,
95
],
[
21,
13,
70
],
[
13,
21,
70
]
],
"labels": [
1,
2,
3
]
}
我正在使用的代码
with open(data, 'r') as d:
complete_data = json.load(d)
for a in complete_data:
samples = a['samples']
lables = a['lables']
但它说
samples = a['samples']
TypeError:字符串索引必须是整数
【问题讨论】:
-
移除 for 循环 - 使用
samples = complete_data['samples']等 -
您试图使用字典的字符串表示。你应该先把它转换成字典。使用 ast.literal_eval 转换字典
-
@ikibir,我搜索了 ast.literal_eval,它说它用于评估输入,检查它是否有效。你能指导我更多吗?
-
@Abdullah 该错误发生在哪一行?
-
@EdWard,您的解决方案有效,我将变量从 with 块中取出,它有效。非常感谢
标签: python json extraction