2017-07-05 48 views
0

私は大量のデータを含む大きなJSONファイルを、Pythonを使用して最大1000行の小さなファイルに解析しようとしています。大規模なJSONファイルを最大1000行の複数のJSONファイルに変換する

これまでのところ、私は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)) 

これはスケーラブルなソリューションである必要があるので、どのように上の任意の他のアイデアをこれをもっとうまくできますか?

EDIT: JSONの内部構造は、次のようである: { "newsletter_optin":1、 "言語" "GV"、 "国": "UY"、 "ユーザ名": "xy32" "email": "[email protected]"、 "user_id":138123918}

私は、メンターが何百万のJSONラインを持つLargeファイルを1000行のミニファイルに分割したいと考えているプロジェクトに取り組んでいます各。

+1

JSONファイルの内部構造についての詳細は教えてください。 –

+2

このファイルは大きすぎてメモリに入力できませんか? JSONの有効なドキュメントのリストを含むファイルですか?それは単なるドキュメントですか? – FrankBr

+3

これは良い考えですか?有効なJSONを別々のファイルに分割しています。後でそれをどのように再結合させますか? –

答えて

0

JSONファイルは内部構造を持っているため、結果は有効なJSONではないため、どの行でも分割することはできません。 JSONファイルはディクショナリとリストが互いにネストされているので、同じリストの要素を分離するJSONを分解するのが最も理にかなっています。ここで

は一例であり:

{'Big JSON':[{'little JSON1':values},{'little JSON2':values}]} 

これはJSONアップを破壊するための正確なコードは、内部構造に依存

{'Big JSON':[{'little JSON1':values}]} 

{'Big JSON':[{'little JSON2':values}]} 

まで破壊することができますあなたのJSONファイルのしかし、各ファイルがスタンドアロンの有効なJSONファイルであることが重要です

関連する問題