我有一个管道分隔文件,我正在尝试使用 python (2.7) 转换为 json。该代码读取文本文件,根据分隔符进行转换,然后将其转换为 json。
当我运行代码时,我的终端窗口中的输出是正确的。但是,当我写入文件时,转义斜杠 \ 被添加到输出中。并且没有转义的引号被添加到输出文件的开头和结尾。
根据其他答案,我每次处理 json 转储时都尝试将 ensure_ascii 设置为 false。但这行不通。
输入.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)
终端输出:
[{"A": "392", "C": "9", "B": "0"}]
data.json 中的输出:
"[{\"A\": \"392\", \"C\": \"9\", \"B\": \"0\"}]"
我是 Python 新手。我该怎么做才能从 .json 文件中删除引号(在开头和结尾)和斜杠?