当前位置: 代码网 > it编程>前端脚本>Python > python实现将多个txt文件的内容合并为一个

python实现将多个txt文件的内容合并为一个

2024年12月14日 Python 我要评论
以下是一个简单的python 脚本,可以将指定目录中的多个.txt文件的内容合并到一个文件中:脚本代码import osdef merge_txt_files(input_dir, output_fi

以下是一个简单的 python 脚本,可以将指定目录中的多个 .txt 文件的内容合并到一个文件中:

脚本代码

import os

def merge_txt_files(input_dir, output_file):
    """
    将指定目录中的所有txt文件合并到一个文件中。

    :param input_dir: 包含txt文件的输入目录
    :param output_file: 输出文件路径
    """
    try:
        with open(output_file, 'w', encoding='utf-8') as outfile:
            for filename in os.listdir(input_dir):
                if filename.endswith('.txt'):
                    file_path = os.path.join(input_dir, filename)
                    with open(file_path, 'r', encoding='utf-8') as infile:
                        outfile.write(infile.read())
                        outfile.write('\n')  # 添加换行符以区分不同文件
        print(f"所有txt文件已合并到 {output_file}")
    except exception as e:
        print(f"发生错误: {e}")

# 使用示例
input_directory = "path/to/your/txt/files"  # 替换为你的txt文件所在的目录路径
output_file_path = "path/to/your/output.txt"  # 替换为合并后的输出文件路径

merge_txt_files(input_directory, output_file_path)

使用方法

1.设置目录路径和输出文件路径:

替换 input_directory 为存放 .txt 文件的目录路径。

替换 output_file_path 为你希望生成的合并文件路径。

2.运行脚本:

确保 python 环境已安装并配置好。

运行脚本,将生成的合并文件保存在指定的路径中。

注意事项

确保所有 .txt 文件编码一致(例如都为 utf-8),避免编码问题。

如果目录中有许多文件,脚本会逐一读取,可能需要一定时间。

方法补充

除了上文的方法,小编还为大家整理了一些其他python合并txt的方法,希望对大家有一定的帮助

python按行合并多个txt文件

import os
 
 
def read_txt(start, last):
    text_list = []
    for n in range(start, last):
        path = os.path.join('hypotheses', 'hyp' + str(n) + '.en-de.test.txt')
        with open(path, 'r') as f:
            dic = {i: sen for i, sen in enumerate(f.readlines())}
            text_dic = {n: dic}
        text_list.append(text_dic)
    return text_list
 
 
sen_list = []
all_sen_list = read_txt(0, 100)
for j in range(0, 1000):
    for k in range(0, 100):
        srn = all_sen_list[k - 1][k][j]
        sen_list.append(srn)
        with open('sent.txt', 'w', encoding='utf-8') as f:
            f.writelines(sen_list

python合并多个txt文件

1.逐行读取和写入文件内容

# 定义要合并的txt文件列表
file_list = ['file1.txt', 'file2.txt', 'file3.txt']

# 创建一个新文件,用于存储合并后的内容
with open('merged_file.txt', 'w') as merge_file:
    # 依次打开每个txt文件,并读取其内容
    for file_name in file_list:
        with open(file_name, 'r') as file:
            # 读取每一行内容,并写入新文件中
            for line in file:
                merge_file.write(line)

# 关闭所有打开的文件
merge_file.close()

2.使用shutil模块复制文件内容

import shutil

# 定义要合并的txt文件列表
file_list = ['file1.txt', 'file2.txt', 'file3.txt']

# 创建一个新文件,用于存储合并后的内容
with open('merged_file.txt', 'wb') as merge_file:
    # 依次打开每个txt文件,并将其内容复制到新文件中
    for file_name in file_list:
        with open(file_name, 'rb') as file:
            shutil.copyfileobj(file, merge_file)

# 关闭所有打开的文件
merge_file.close()

到此这篇关于python实现将多个txt文件的内容合并为一个的文章就介绍到这了,更多相关python合并多个txt文件内容内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com