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