我正在尝试编写python脚本,将文件中的行转换为json输出,其中每行包含一个json blob。
到目前为止,我的代码是:
with open( "/Users/me/tmp/events.txt" ) as f:
content = f.readlines()
# strip to remove newlines
lines = [x.strip() for x in content]
i = 1
for line in lines:
filename = "input" + str(i) + ".json"
i += 1
f = open(filename, "w")
f.write(line)
f.close()
但是,我遇到一个问题,如果我在引用文件中有一个条目,例如:
client:"mac"
这将输出为:
"client:""mac"""
在写入文件时使用第二条带将给出:
client:""mac
但我想看看:
client:"mac"
有什么方法可以强制Python读取格式为“ something”的文本,而无需在其周围附加引号?
答案 0 :(得分:0)
与其创建辅助列表以从内容中删除换行符,不如直接打开输入和输出文件。遍历输入行并剥离所有您认为必要的内容时,将其写入输出文件。尝试这样的事情:
with open('events.txt', 'rb') as infile, open('input1.json', 'wb') as outfile:
for line in infile:
line = line.strip('"')
outfile.write(line)