我有成千上万个 JSON 对象,它们以以下格式存储在一个 JSON 文件中:
如何将它们作为 JSON 对象加载?
我尝试过两种方法,但都出现了错误:
方法一:
错误:
方法二:
错误:
我已经阅读了相关的问题,但它们都没有帮助。
{ "a": 1,
"b" : 2,
"c" : {
"d":3
}
}{ "e" : 4,
"f" : 5,
"g" : {
"h":6
}
}
如何将它们作为 JSON 对象加载?
我尝试过两种方法,但都出现了错误:
方法一:
>>> with open('test1.json') as jsonfile:
... for line in jsonfile:
... data = json.loads(line)
...
错误:
Traceback (most recent call last):
File "<stdin>", line 3, in <module>
File "/usr/lib/python3.5/json/__init__.py", line 319, in loads
return _default_decoder.decode(s)
File "/usr/lib/python3.5/json/decoder.py", line 339, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
File "/usr/lib/python3.5/json/decoder.py", line 355, in raw_decode
obj, end = self.scan_once(s, idx)
json.decoder.JSONDecodeError: Expecting property name enclosed in double quotes: line 2 column 1 (char 10)
方法二:
>>> with open('test1.json') as jsonfile:
... data = json.load(jsonfile)
...
错误:
Traceback (most recent call last):
File "<stdin>", line 2, in <module>
File "/usr/lib/python3.5/json/__init__.py", line 268, in load
parse_constant=parse_constant, object_pairs_hook=object_pairs_hook, **kw)
File "/usr/lib/python3.5/json/__init__.py", line 319, in loads
return _default_decoder.decode(s)
File "/usr/lib/python3.5/json/decoder.py", line 342, in decode
raise JSONDecodeError("Extra data", s, end)
json.decoder.JSONDecodeError: Extra data: line 7 column 1 (char 46)
>>>
我已经阅读了相关的问题,但它们都没有帮助。
json.load
错误的原因。 - Aquarthur[
,在每个对象之间添加,
,并在结尾处添加]
。 - Massimo Costa