Python 读取一个文件夹中的所有.txt文件,然后将文本(基于第行)复制到另一个.txt文件
我正在尝试编写Python代码,从一个目录中读取所有.txt文件,然后将其(基于第行)复制到另一个.txt文件:Python 读取一个文件夹中的所有.txt文件,然后将文本(基于第行)复制到另一个.txt文件,python,python-3.x,Python,Python 3.x,我正在尝试编写Python代码,从一个目录中读取所有.txt文件,然后将其(基于第行)复制到另一个.txt文件: import os import glob path = '/Users/Documents/*.txt' f1 = open(os.path.expanduser('/Users/Documents/test.txt'),'w') for data in glob.glob(path): with open(data) as script: for line in
import os
import glob
path = '/Users/Documents/*.txt'
f1 = open(os.path.expanduser('/Users/Documents/test.txt'),'w')
for data in glob.glob(path):
with open(data) as script:
for line in script:
script.readline()
if 'Subject: ' in line:
f1.write(line)
我的代码正常工作,但它只能从文件中复制一些文本,其余部分会显示错误消息,如:
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe2 in position 1658: ordinal not in range(128)
我怎样才能解决这个问题?有人吗?您的文件是否包含非ascii字符?使用
codecs.open()
然后我所有的.txt文件,它包含了一群在新闻组中键入的人,他们通常键入ascii字符,但是我尝试了你的建议,仍然给我错误。你确实提到了编码作为utf-8
对吗?愚蠢的问题,但是你是在非明文编辑器中编写(粘贴)脚本的吗?通常情况下会发生这种情况。@martianwars是的,我有。您的文件是否包含非ascii字符?使用codecs.open()
然后我所有的.txt文件,它包含了一群在新闻组中键入的人,他们通常键入ascii字符,但是我尝试了你的建议,仍然给我错误。你确实提到了编码作为utf-8
对吗?愚蠢的问题,但是你是在非明文编辑器中编写(粘贴)脚本的吗?这就是通常发生的事情。@martianwars是的,我做了。