Python遍历指定路径中的所有CSV文件并将含有关键字的行存放到新的CSV文件中

介绍

在开发过程中,我们经常需要处理包含大量数据的CSV文件,并且需要根据某些关键字来筛选出特定的行。本文将向初学者介绍如何使用Python遍历指定路径中的所有CSV文件,并将含有关键字的行存放到新的CSV文件中。

步骤

下面是整个流程的步骤概述,我们将在后续的内容中逐步展开。可以使用表格进行展示。

步骤 描述
1 指定路径
2 遍历CSV文件
3 找出含有关键字的行
4 存储到新的CSV文件中

步骤详解

1. 指定路径

首先,我们需要指定要遍历的路径。可以使用os库来实现。

import os

path = "指定路径"

在这里,你需要将"指定路径"替换为实际的路径。例如,如果要遍历当前目录下的所有CSV文件,可以使用path = os.getcwd()

2. 遍历CSV文件

接下来,我们需要遍历指定路径下的所有CSV文件。可以使用os.listdir()函数来获取指定路径下的所有文件和文件夹。

file_list = []

for file in os.listdir(path):
    if file.endswith(".csv"):
        file_list.append(file)

这段代码将遍历指定路径下的所有文件和文件夹,并将以".csv"为扩展名的文件添加到file_list列表中。

3. 找出含有关键字的行

现在,我们需要找出CSV文件中含有关键字的行。可以使用csv库和csv.reader()函数来读取CSV文件,并使用in关键字来筛选含有关键字的行。

import csv

keyword = "关键字"
filtered_rows = []

for file in file_list:
    with open(os.path.join(path, file), "r") as csv_file:
        csv_reader = csv.reader(csv_file)
        for row in csv_reader:
            if keyword in row:
                filtered_rows.append(row)

在这里,你需要将"关键字"替换为实际的关键字。例如,如果要筛选含有关键字"Python"的行,可以使用keyword = "Python"

4. 存储到新的CSV文件中

最后,我们需要将筛选后的行存储到新的CSV文件中。可以使用csv.writer()函数和csv.writerow()函数来写入CSV文件。

new_csv_file = "新的CSV文件路径"

with open(new_csv_file, "w", newline="") as csv_file:
    csv_writer = csv.writer(csv_file)
    for row in filtered_rows:
        csv_writer.writerow(row)

在这里,你需要将"新的CSV文件路径"替换为实际的路径。例如,如果要将结果存储到名为"filtered_data.csv"的文件中,可以使用new_csv_file = "filtered_data.csv"

状态图

以下是整个流程的状态图表示:

stateDiagram
    [*] --> 指定路径
    指定路径 --> 遍历CSV文件
    遍历CSV文件 --> 找出含有关键字的行
    找出含有关键字的行 --> 存储到新的CSV文件中
    存储到新的CSV文件中 --> [*]

总结

通过本文的介绍,你应该已经了解了如何使用Python遍历指定路径中的所有CSV文件,并将含有关键字的行存放到新的CSV文件中。首先,我们指定了要遍历的路径,然后遍历CSV文件,找出含有关键字的行,并将结果存储到新的CSV文件中。希望本文对你有所帮助,让你能更好地处理CSV文件中的数据。