使用Python读取、修改和保存CSV文件

CSV(Comma-Separated Values)是一种广泛使用的数据存储格式,适合保存表格数据。Python语言提供了多种库来简化CSV文件的读取和处理工作。本文将介绍如何使用Python来读取、修改并保存CSV文件,并提供示例代码帮助理解。

1. 安装CSV库

在Python中,内置的csv库允许我们非常便利地操作CSV文件,而无需额外安装任何第三方库。我们将重点讨论这个库。

2. 读取CSV文件

首先,我们需要读取CSV文件。假设我们有一个名为data.csv的文件,其内容如下:

name,age,city
Alice,30,New York
Bob,25,Los Angeles
Charlie,35,Chicago

我们可以使用下面的代码来读取该文件:

import csv

# 读取CSV文件
with open('data.csv', mode='r', newline='') as file:
    reader = csv.reader(file)
    header = next(reader)  # 读取表头
    data = [row for row in reader]  # 读取数据行

print("表头:", header)
print("数据:", data)

在这个示例中,我们首先打开CSV文件并创建一个读取器。通过next(reader)函数,我们可以提取表头,然后将数据行保存到一个列表中。

3. 修改数据

现在,我们将对读取的数据进行一些修改。假设我们要将所有人的年龄加1岁:

# 修改数据
for row in data:
    row[1] = str(int(row[1]) + 1)  # 将年龄加1

在这里,我们使用一个for循环遍历每一行,将相应的年龄增加1。

4. 保存修改后的数据

最后,我们将修改后的数据保存到新的CSV文件中。可以使用csv.writer来完成这项工作:

# 保存修改后的数据
with open('updated_data.csv', mode='w', newline='') as file:
    writer = csv.writer(file)
    writer.writerow(header)  # 保存表头
    writer.writerows(data)    # 保存所有数据行

上述代码片段打开一个新的CSV文件(updated_data.csv),写入表头和修改后的数据。

5. 完整代码

将以上所有步骤综合起来,完整的代码如下:

import csv

# 读取CSV文件
with open('data.csv', mode='r', newline='') as file:
    reader = csv.reader(file)
    header = next(reader)  # 读取表头
    data = [row for row in reader]  # 读取数据行

# 修改数据
for row in data:
    row[1] = str(int(row[1]) + 1)  # 将年龄加1

# 保存修改后的数据
with open('updated_data.csv', mode='w', newline='') as file:
    writer = csv.writer(file)
    writer.writerow(header)  # 保存表头
    writer.writerows(data)    # 保存所有数据行

6. 旅行图

下面是一个使用Mermaid语法表示的旅行图,展示了数据处理的过程:

journey
    title 数据处理旅程
    section 读取数据
      打开CSV文件: 5: 0: 1
      读取表头: 5: 0: 1
      读取数据行: 5: 0: 1
    section 修改数据
      增加年龄: 4: 1: 1
    section 保存数据
      打开新文件: 5: 0: 1
      写入表头: 5: 0: 1
      写入数据行: 5: 0: 1

结尾

通过本文,我们学习了如何使用Python的csv库读取、修改和保存CSV文件。以上代码示例演示了基本的操作流程,掌握这些技能后,您可以轻松处理各种表格数据。在实际应用中,您还可以结合更复杂的数据处理需求进行进一步学习。希望这篇文章能帮助你开启数据处理的旅程!