# 本地文件处理与数据分析项目实践


背景介绍

本项目旨在实现对本地目录中所有txt文件内容的读取与保存功能,同时计算该目录中所有文件的平均字数。该功能要求程序独立运行,无需依赖任何框架或第三方服务。本项目的核心知识涵盖文件读写、数据处理及计算逻辑,具有一定的挑战性。

思路分析

  1. 文件读取与保存
    使用Python的os.listdir遍历本地目录,通过文件路径读取txt文件内容。若目录不存在,则程序会提示用户检查路径是否正确。保存内容时使用open函数写入指定文件夹。

  2. 平均值计算
    遍历所有文件,统计每个文件的字数,计算总和与数量,最后求出平均值。注意处理可能的空文件或空路径异常。

代码实现

import os

def process_directory(directory_path, output_folder):
    result_file = os.path.join(output_folder, "output.txt")
    print(f"正在读取目录: {directory_path} 中的 txt 文件内容...\n")

    # 遍历目录中的文件
    files = os.listdir(directory_path)
    file_contents = []

    # 读取所有txt文件内容
    for file in files:
        if file.endswith('.txt'):
            content = open(os.path.join(directory_path, file), 'r', encoding='utf-8').read()
            file_contents.append(content)

    # 保存输出内容
    print(f"输出内容已写入: {result_file}\n")
    with open(result_file, 'w', encoding='utf-8') as f:
        for line in file_contents:
            f.write(line + '\n')

    # 计算平均字数
    total_words = sum(len(line) for line in file_contents)
    file_count = len(file_contents)
    avg_words = total_words / file_count if file_count > 0 else 0

    print(f"目录中所有文件的平均字数: {avg_words:.2f} 字\n")
    return avg_words

if __name__ == "__main__":
    directory_path = "C:/SampleData"
    output_folder = "C:/OutputFolder"
    avg_value = process_directory(directory_path, output_folder)

总结

本项目通过Python实现对本地目录中txt文件内容的读取与保存,并计算所有文件的平均字数。关键步骤包括:文件路径的处理、内容的读取与写入、数据的统计与平均值计算。该实现满足独立运行要求,具备良好的可读性和可维护性。该项目不仅验证了Python在文件处理方面的强大能力,也为开发者提供了实际应用的范例。


发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注