Python获取文件夹中所有的CSV文件

文件操作是编程中常见的任务之一,而处理文件夹中的文件更是一个常见的需求。在Python中,我们可以使用一些内置的模块来获取文件夹中所有的CSV文件,并进行相应的处理。

1. 使用os模块

Python的os模块提供了许多操作文件和文件夹的函数。我们可以使用其中的listdir函数来列出文件夹中的所有文件和子文件夹,然后根据文件的后缀名来筛选出CSV文件。

import os

folder_path = "/path/to/folder"  # 文件夹路径
csv_files = []  # 用于存储CSV文件的列表

# 遍历文件夹中的所有文件和子文件夹
for file_name in os.listdir(folder_path):
    file_path = os.path.join(folder_path, file_name)  # 文件的完整路径
    if os.path.isfile(file_path) and file_name.endswith(".csv"):  # 判断是否为文件和文件后缀名是否为.csv
        csv_files.append(file_path)

# 输出CSV文件列表
for csv_file in csv_files:
    print(csv_file)

上述代码中,我们首先定义了文件夹的路径folder_path和一个空列表csv_files,用于存储找到的CSV文件。然后,我们使用os.listdir函数来遍历文件夹中的所有文件和子文件夹。对于每个文件,我们使用os.path.isfile函数判断其是否为文件,并使用endswith方法判断文件的后缀名是否为.csv。如果满足条件,则将文件的完整路径添加到csv_files列表中。最后,我们使用print函数输出CSV文件的列表。

2. 使用glob模块

除了使用os模块,我们还可以使用Python的glob模块来获取文件夹中所有的CSV文件。glob模块提供了一个函数glob,可以根据指定的模式匹配文件路径。

import glob

folder_path = "/path/to/folder"  # 文件夹路径
csv_files = glob.glob(folder_path + "/*.csv")  # 匹配文件夹中所有的CSV文件

# 输出CSV文件列表
for csv_file in csv_files:
    print(csv_file)

上述代码中,我们使用glob.glob函数来匹配文件夹中所有的CSV文件。我们通过将文件夹路径和/*.csv模式拼接在一起,实现了匹配所有后缀名为.csv的文件。最终,我们使用print函数输出CSV文件的列表。

总结

本文介绍了两种常用的方法来获取文件夹中所有的CSV文件:使用os模块和使用glob模块。这些方法在实际应用中可以根据需求选择使用,它们都能够方便地获取文件夹中的特定类型的文件,并进行相应的处理。

使用os模块的方法相对较灵活,可以根据文件的后缀名进行筛选,并进行更加复杂的判断操作。而使用glob模块的方法则更加简洁,直接指定匹配的模式即可。在处理大型文件夹时,glob模块的性能通常更好。

通过掌握这些方法,你可以更加方便地获取文件夹中的CSV文件,并进行后续的数据处理、分析等操作。希望本文对你有所帮助!

Journey

journey
    title Python获取文件夹中所有的CSV文件
    section 使用os模块
        遍历文件夹中的所有文件和子文件夹 -> 判断文件是否为CSV文件 -> 获取CSV文件的完整路径 -> 输出CSV文件列表
    section 使用glob模块
        匹配文件夹中所有的CSV文件 -> 输出CSV文件列表
    section 总结
        介绍两种方法的优缺点 -> 提示根据需求选择方法 -> 强调方法的应用范围 -> 结束

参考代码:

import os

folder_path = "/path/to/folder"  # 文件夹路径
csv_files = []  # 用于存储CSV文件的列表

#