如何在 Python 中打开目录中的所有文件

Python 作为一门高级编程语言,广泛应用于各个领域。而在数据处理和分析的过程中,往往需要载入大批量的数据文件。本文将介绍如何在 Python 中打开目录中的所有文件,以便于进行数据处理操作。

步骤:

  1. 导入 os 模块

使用 os 模块可以方便地遍历目录中的所有文件。

import os
  1. 定义需要遍历的目录路径
# Windows 系统示例路径
dir_path = "C:\\Users\\用户名\\Documents\\data_folder"

# macOS 或 Linux 系统示例路径
dir_path = "/Users/用户名/Documents/data_folder"
  1. 遍历目录中的所有文件

使用 os.listdir() 函数可以获取目录中所有文件的名称。结合 os.path.join() 函数可以获取文件的绝对路径。再通过 os.path.isfile() 函数判断当前路径是否为文件,如果是,则进行相应的操作。

for file_name in os.listdir(dir_path):
    file_path = os.path.join(dir_path, file_name)
    if os.path.isfile(file_path):
        # 进行相应的操作
  1. 给出实例

以下是一个基于 Pandas 库的实例,遍历 data_folder 目录下所有 .csv 文件,将它们读入 Pandas 数据框,并输出行数和列数。为了减少内存占用,建议使用 Pandas 的 pd.read_csv() 函数中的 chunksize 参数。

import os
import pandas as pd

dir_path = "C:\\Users\\用户名\\Documents\\data_folder"

for file_name in os.listdir(dir_path):
    file_path = os.path.join(dir_path, file_name)
    if os.path.isfile(file_path) and file_name.endswith('.csv'):
        df_reader = pd.read_csv(file_path, chunksize=1000)
        for df_chunk in df_reader:
            print("{}: {} rows, {} columns".format(file_name, df_chunk.shape[0], df_chunk.shape[1]))

注意事项:

  1. 确认要遍历的目录中包含需要的所有文件,并且不会误将其他文件读入内存。
  2. 根据需要修改读取文件的方式和参数,例如文件编码、文件分隔符等。
  3. 如果需要处理大量数据文件,建议在遍历过程中使用内存优化方法,例如 chunksize 参数、生成器表达式等。