👻

PythonでCSV出力時に空行が入らないようにする方法

に公開

Pythonで2次元リストをCSV出力した際に空行が入ってしまいました。
以下の通り解決できましたので、共有させていただきます。

環境: Windows 11、Python 3.11.4

修正前のスクリプト

import csv

list = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]

with open("ファイル名.csv", "w") as f:
    writer = csv.writer(f)
    writer.writerows(list)

修正後のスクリプト

import csv

list = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]

with open("ファイル名.csv", "w") as f:
    # 改行コードを「\n」に変更します。
    # ※既定の改行コードは「\r\n」となっており「\r\n」だと空行が入ってしまいます。
    writer = csv.writer(f, lineterminator="\n")
    writer.writerows(list)

Discussion