我有一个2 GB的json文件,当我尝试加载它时,我收到此错误:
json.decoder.JSONDecodeError:未终止的字符串,从第1行开始:1093156512(char 1093156511)
所以这意味着可能有一些escape sequence,对吧?(或类似的东西......)搞砸json正确吗?问题是这个文件太大了,只是在编辑器中打开它是一个巨大的痛苦。在我看到问题所在之前,编辑器100%崩溃。但是,我仍然需要以某种方式解决这个问题....我不确定是什么导致了这个问题....它可能是很多东西。
我的数据基本上是一个像这样的对象列表:
data = [{key1: 123, key2:"this is the first string to concatenate"},
{key1: 131, key2:"this is the second string to concatenate"},
{key1: 152, key2:"this is the third string to concatenate"} ]
除了更复杂的key2
之外。如果问题是\
,如果我摆脱了json文件中的所有\
,它会起作用吗?但是,没有什么可以说奇怪的转义字符是我的问题....而且,我对我的输入json文件的控制很少,所以我认为无论如何我都无法改变它。
无论如何在不更改输入json文件的情况下修复此问题?
[编辑] 这是整个错误跟踪:
文件“halp.py”,第38行,in data = json.load(json_file,strict = False)
文件“/usr/lib/python3.6/json/init.py”,第299行,载入中 parse_constant = parse_constant,object_pairs_hook = object_pairs_hook,** kw)
文件“/usr/lib/python3.6/json/init.py”,第367行,载入中 return cls(** kw).decode(s)
文件“/usr/lib/python3.6/json/decoder.py”,第339行,解码 obj,end = self.raw_decode(s,idx = _w(s,0).end())
文件“/usr/lib/python3.6/json/decoder.py”,第355行,在raw_decode中 obj,end = self.scan_once(s,idx) json.decoder.JSONDecodeError:未终止的字符串,从第1行开始:1093156512(char 1093156511)
当我在那里寻求时,我得到了:
eers in the fridge!"}, {"city_name": "Portland", "comments": "A cute space to rest your head in Portland. We just stayed for one night, briefly met Adam who was lovely! Appreciated the beers and coffe
答案 0 :(得分:-1)