我正在使用 Windows 7 和 Python 3.4。
我有几个多行文本文件(全部为波斯语),我想在一个条件下将它们合并为一个:输出文件的每一行必须包含每个输入文件的整个文本。这意味着如果有九个文本文件,则输出文本文件必须只有九行,每行包含单个文件的文本。我写了这个:
import os
os.chdir ('C:\Dir')
with open ('test.txt', 'w', encoding = 'UTF8') as OutFile:
with open ('news01.txt', 'r', encoding = 'UTF8') as InFile:
while True:
_Line = InFile.readline()
if len (_Line) == 0:
break
else:
_LineString = str (_Line)
OutFile.write (_LineString)
它适用于那个文件,但看起来它在输出文件中占用了不止一行,并且输出文件包含令人不安的字符,例如:&
, 
以及类似的东西。但源文件不包含其中任何一个。此外,我还有一些其他文本:news02.txt、news03.txt、news04.txt ... news09.txt。
考虑到所有这些:
- 如何更正我的代码,以便它一个接一个地读取所有文件,每个文件只放在一行中?
- 如何清除这些不熟悉和奇怪的字符或防止它们出现在我的最终文本中?