0

json.txt我有这个数据:

"""{"iPod": "apple"}"""

这段代码就是解析json.txt

f = open("json.txt", "r")
json_data = f.read()
f.close

print json.loads(json_data)

结果是:

ValueError:额外数据:line1 column2 - line2 column1(char2-24)

我想json.txt保持现在的状态。

如何更改此代码?

4

2 回答 2

1

unbuntu 的答案不起作用的原因是因为当您读取文件时,它包含\n字符。

'"""{"iPod": "apple"}"""\n'

你也必须删除它。

import json
with open("json.txt", "r") as f:
    json_data = f.read().strip('"\n')   

print json.loads(json_data)
于 2013-03-01T04:26:26.660 回答
0

看起来您json_data包含三重引号。在将 JSON 传递给之前,您需要将它们剥离json.loads

with open("json.txt", "r") as f:
    json_data = f.read().strip('"')   

print json.loads(json_data)
于 2013-03-01T03:13:02.213 回答