Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/silverlight/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 读取一个文件夹中的所有.txt文件,然后将文本(基于第行)复制到另一个.txt文件_Python_Python 3.x - Fatal编程技术网

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

我正在尝试编写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 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是的,我做了。