我尝试使用不断增加的数据将大型JSON文件解析为使用Python最多1000行的较小文件。
到目前为止,我设法打印了多达一千行,但现在我已经陷入了下一步的位置:
with open(input_file) as f:
count = 0
data = (lines for lines in f if count < 1000)
for x in data:
count +=1
print (x + str(count))
由于这需要一个可扩展的解决方案,关于我如何做得更好的任何其他想法?
编辑: JSON的内部结构类似于以下内容: {&#34; newsletter_optin&#34;:1,&#34;语言&#34;:&#34; gv&#34;,&#34;国家&#34;:&#34; UY&#34;,&# 34;用户名&#34;:&#34; xy32&#34;,&#34;电子邮件&#34;:&#34; xyz@gm.com",&#34; user_id&#34;:138123918} < / p>
我正在开展一个项目,我的导师希望我将包含数百万条JSON行的大文件拆分成每行1000行的迷你文件。
答案 0 :(得分:0)
JSON文件具有内部结构,因此您不能在任何行上将其分解,因为结果不是有效的JSON。由于JSON文件是字典和列表彼此嵌套的组合,因此最有必要打破同一列表中的JSON分隔元素。
这是一个例子:
{'Big JSON':[{'little JSON1':values},{'little JSON2':values}]}
这可以分解为
{'Big JSON':[{'little JSON1':values}]}
和
{'Big JSON':[{'little JSON2':values}]}
打破JSON的确切代码取决于JSON文件的内部结构。但重要的是,每个文件都是独立的有效JSON文件