类型错误:json.loads()之后的字符串索引必须是整数
我有以下字符串:
'"{"values": [3.304000000004, 3.010000000002, 5.8220000000063]}"'
我需要将其转换为 JSON。如果我做:
parsed = json.loads(data)
parsed["values"]
...然后我收到以下错误:
TypeError: string indices must be integers
如何解决?
回答
正如评论部分所述,您的数据似乎是双重编码的(某种类型的 dict 字符串)。
尝试像这样解析字符串两次
In [1]: import json
In [2]: data = '"{"values": [3.304000000004, 3.010000000002, 5.8220000000063]}"'
In [3]: parsed = json.loads(json.loads(data))
In [4]: parsed['values']
Out[4]: [3.304000000004, 3.010000000002, 5.8220000000063]