パイプで区切られたファイルがあります。私はpython(2.7)を使用してjsonに変換しようとしています。 コードはテキストファイルを読み取り、デリミタに基づいて変換し、jsonに変換します。Jsonプリント出力がエスケープ文字のために書込み出力と異なっています
私はコードを実行すると、私のターミナルウィンドウの出力が正しいです。しかし、ファイルに書き込むとき、エスケープ・スラッシュ\が出力に追加されています。また、出力ファイルの先頭と末尾にエスケープのない引用符が追加されています。
他の回答に基づいて、私はjsonダンプを処理するたびに、ensure_asciiをfalseに設定しようとしました。しかし、それは動作していません。
INPUT.TXT:
392|0|9
コード:
import csv
import json
f = open('input.txt', 'rU')
reader = csv.DictReader(f, fieldnames = ("A", "B", "C"), delimiter='|')
out = json.dumps([ row for row in reader ], ensure_ascii=False)
print out
with open('data.json', 'w') as outfile:
json.dump(out, outfile, ensure_ascii=False)
ターミナルでの出力:data.jsonで
[{"A": "392", "C": "9", "B": "0"}]
出力:
"[{\"A\": \"392\", \"C\": \"9\", \"B\": \"0\"}]"
私はPythonが初めてです。引用符(開始点と終了点)と.jsonファイルのスラッシュを削除するにはどうすればよいですか?
ありがとうございます。それは完璧な意味合いがあります。あなたの変更によって問題は解決されました。 – lucastimmons