我设法用;
替换了我想要的东西但现在我很难删除空格和换行符以获取所有数据,直到;
在一行上然后开始下一行。 / p>
代码:
replacements = {'Geboren am':';', 'Nato/a il':';', 'Né(e) le':';'}
with open('DATEN2.txt') as infile, open('DATENBEARBEITET2.txt', 'w') as outfile:
for line in infile:
for src, target in replacements.iteritems():
line = line.replace(src, target)
outfile.write(line)
输入文件的样子:(替换后)
Kommissionen und Delegationen
06.12.1999 - 30.11.2003
Begnadigungskommission (BeK-V)
;
应该是什么样的:
Kommissionen und Delegationen, 06.12.1999 - 30.11.2003, Begnadigungskommission (BeK-V);
经过长时间的搜索,我来到这里询问,如果有人知道正确的存储库或命令用于此类任务,我真的很难进入下一步。
编辑:/此外,之前的换行符应变为逗号,请参阅示例输出
答案 0 :(得分:1)
我假设你想要消除额外的空格 - 消除所有这些空白会导致KommissionenundDelegationen,06...
。您可以使用strip()
和join()
:
replacements = {'Geboren am':';', 'Nato/a il':';', 'Né(e) le':';'}
lines = []
with open('DATEN2.txt') as infile, open('DATENBEARBEITET2.txt', 'w') as outfile:
for line in infile:
line = line.strip()
if not line:
continue
for src, target in replacements.iteritems():
line = line.replace(src, target)
lines.append(line)
outfile.write(', '.join(lines))
这会创建一个list
,其中包含多个空格的行,每行都会删除空格并进行适当的替换。然后list
与', '
的分隔符结合。