首页 > 解决方案 > 合并 txt 文件问题,输出文件不是 txt

问题描述

下面是我将几个 txt 文件合并在一起的代码。

import os

with open('outfile', 'w') as outfile:
    for filename in os.listdir(os.getcwd()):
        if (filename.endswith(".txt")):
            with open(filename) as infile:
                for line in infile:
                    outfile.write(line)

输出文件“outfile”是合并文件,但它不是 txt。
然后我尝试了

with open('outfile.txt', 'w') as outfile:

该过程卡住了,没有任何内容写入 outfile.txt
有人知道如何解决吗?我的目标是将输出文件保存为 txt。

标签: pythonmergeoutput

解决方案


我猜你可能遇到文件锁,当有一个进程打开文件时write,其他进程在操作该文件时有问题。
您可以尝试绕过该文件

import os

with open('outfile.txt', 'w') as outfile:
    for filename in os.listdir(os.getcwd()):
        if (filename.endswith(".txt")) and filename!='outfile.txt':
            with open(filename) as infile:
                for line in infile:
                    outfile.write(line)

推荐阅读