如何将多个txt文件合并为一个文件,包括它们的名称(使用python)?

如何将多个txt文件合并为一个文件,包括它们的名称(使用python)?,python,Python,我想用Python将几个txt文件合并成一个文件。我已经找到了一个代码: import glob read_files = glob.glob("*.txt") with open("result.txt", "wb") as outfile: for f in read_files: with open(f, "rb") as infile: outfile.wr

我想用Python将几个txt文件合并成一个文件。我已经找到了一个代码:

import glob

read_files = glob.glob("*.txt")

with open("result.txt", "wb") as outfile:
    for f in read_files:
        with open(f, "rb") as infile:
            outfile.write(infile.read())
但是我想保留单个txt文件的名称,并将它们打印在合并的txt文件中每个txt文件的上方。你知道如何解决这个问题吗?

这应该行得通

import glob

read_files = glob.glob("*.txt")

with open("result.txt", "wb") as outfile:
    for f in read_files:
        with open(f, "rb") as infile:
            outfile.write(bytes(f"{f}\n", 'utf-8'))
            outfile.write(infile.read())

只需将
f
(这是文件名)写入
outfile
,然后再写入
infle
。感谢您的快速回答!我该怎么做呢?
outfile.write(f.encode())
也许吧?也许会加上一些新的线条…完美!现在我有了文件名,但是我怎么能在它们后面加一个换行符呢?谢谢你的回答!但它给了我以下错误:TypeError:a bytes-like-object是必需的,而不是'str'…你是对的outfile是以bytes(“wb”)的形式打开的这个版本应该可以正常工作!但是有没有办法在文件名后添加换行符?是的,请检查last VersionAy!非常感谢你!