Python 逐行写入 CSV

Muhammad Maisam Abbas 2023年1月30日
  1. 使用 Python 中的传统文件处理将数据写入 CSV 文件
  2. 使用 Python 中的 csv.writer() 函数将数据写入 CSV 文件
Python 逐行写入 CSV

本教程将讨论如何在 Python 中将表格数据写入 CSV 文件。

使用 Python 中的传统文件处理将数据写入 CSV 文件

此方法保留用于我们的数据已经以逗号分隔格式写入,并且我们必须将其写入某个文件中。

这不是一种处理 CSV 数据的非常 Pythonic 的方式,但它确实有效。我们必须以写入模式打开一个 CSV 文件,并将我们的数据逐行写入文件中。以下代码片段显示了此方法的工作实现。

data = [["var112"], ["var234"], ["var356"]]
with open("csvfile.csv", "w") as file:
    for line in data:
        for cell in line:
            file.write(cell)
        file.write("\n")

CSV 文件:

使用 Python 中的传统文件处理将数据写入 CSV 文件

我们使用 Python 中的 file.write() 函数在 csvfile.csv 中编写了一个单独的列。

在处理 CSV 文件时,这种方法对用户不是很友好。这种非常准系统的方法仅在我们的数据很简单时才有效。随着我们的数据开始增长并且处理变得越来越复杂,这种方法变得非常难以使用。

为了避免处理不同文件处理问题的头痛,我们必须使用下一节讨论的方法。

使用 Python 中的 csv.writer() 函数将数据写入 CSV 文件

我们将在此方法中使用 Python 中的 csv 模块。

csv 模块在 Python 中处理 CSV 文件和数据。csv 库中的 writer() 函数将 CSV 文件作为输入参数,并返回一个 writer 对象,该对象负责将用户数据转换为 CSV 格式并将其写入文件。

我们可以使用此 writer 对象中的 writerows() 函数将数据写入 CSV 文件。以下代码片段显示了此方法的工作实现。

import csv

data = [["var1", "val1", "val2"], ["var2", "val3", "val4"], ["var3", "val5", "val6"]]
with open("csvfile2.csv", "w") as file:
    writer = csv.writer(file)
    writer.writerows(data)

CSV 文件:

csv2

我们将嵌套列表 data 中存储的值写入 csvfile2.csv 文件。data 中的每个列表对应于输出文件中的唯一行。

这种方法比我们以前的方法更受欢迎,因为 csv 模块可以更轻松地在 Python 中处理 CSV 数据。请注意,我们仍然需要使用这种方法进行文件处理,但它比简单地使用传统的文件处理技术要容易得多。

Muhammad Maisam Abbas avatar Muhammad Maisam Abbas avatar

Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.

LinkedIn

相关文章 - Python CSV