【发布时间】:2017-11-21 10:03:47
【问题描述】:
我对如何继续代码有疑问,我需要从一个文件夹中取出所有文件并将它们合并到一个文件中,并使用另一种文本格式。
例子:
输入文件的文本格式如下:
"{'nr': '3173391045', 'data': '27/12/2017'}"
"{'nr': '2173391295', 'data': '05/01/2017'}"
"{'nr': '5173351035', 'data': '07/03/2017'}"
输出文件必须是这样的行:
"3173391045","27/09/2017"
"2173391295","05/01/2017"
"5173351035","07/03/2017"
这是我的工作代码,它用于合并和取出空白行
import glob2
import datetime
filenames=glob2.glob("*.txt")
with open(datetime.datetime.now().strftime("%Y-%m-%d-%H-%M-%S-%f")+".SAI", 'w') as file:
for filename in filenames:
with open(filename,"r") as f:
file.write(f.read())
我正在尝试使用 .replace 进行某些操作,但无法正常工作,出现语法错误或空白文件
filedata = filedata.replace("{", "") for line in filedata
【问题讨论】:
-
使用
json.loads将每一行读入字典,而不是试图蹩脚地解析您的输入字符串。 -
@Jean-FrançoisFabre:不幸的是,行不是有效的 json 格式:字符串用单引号括起来,而 json 需要双引号......
-
这就是挑战!
标签: python python-3.x datetime merge io