JSON ファイルを読み込んで、「テキスト」フィールドに含まれる単語数を特定し、その情報を新しいフィールド「長さ」として追加し、新しい JSON オブジェクトをファイルに書き込もうとしています。私は次のコードでそれを行いました:
import json
with open("file_read.json", "r") as review_file, open(
"file_write.json", "w") as review_write:
for line in review_file:
review_object = json.loads(line)
review_object["length"] = len(review_object["text"].split())
json.dump(review_object, review_write)
元のファイルは 200MB を超えていますが、Vim で問題なく表示できます。ただし、私が作成したファイルは 3 MB しか大きくないため、ロードするとロードに非常に長い時間がかかります。さらに、最初の JSON オブジェクトだけを読み取っても問題があります。ファイルを書き込んだ後、次のことを試しました。
with open("file_write", "r") as review_file:
print review_file.readline()
print("abcd123")
私は python-mode で Vim を使用しています。最初に出力されたステートメントを JSON 情報でトラバースすると、非常に途切れますが、2 番目のステートメントはそうではありません。