[Python] ファイルの書き込みで空の行が記述されてしまう。 | 株式会社アースリンク

2021年5月17日

[Python] ファイルの書き込みで空の行が記述されてしまう。

PythonでCSVを作成する処理を作ったのですが、出力されたCSVを見るとレコードとレコードの間に空の行が記述されてしまいました。

コード

import csv

path = "E:\ユーザー\マイドキュメント\テスト.csv"
record = [["aaa","bbb","ccc"],["111","222","333"],["あああ","いいい","ううう"]]

with open(path,'w') as f:
    writer = csv.writer(f)
    writer.writerows(record)

 

出力されたCSVが以下になります。

aaa,bbb,ccc

111,222,333

あああ,いいい,ううう

この現象を解消するためにはopenのオプションにnewline=””を追加する事で解決しました。

import csv

path = "E:\ユーザー\マイドキュメント\テスト.csv"
record = [["aaa","bbb","ccc"],["111","222","333"],["あああ","いいい","ううう"]]

with open(path,'w',newline="") as f:
    writer = csv.writer(f)
    writer.writerows(record)

「newline=””」を追加しないと改行コードが自動変換されて表示がおかしくなってしまうみたいです。

Contact
お問い合わせ

電話番号0120 - 889 - 236

受付時間:平日 9:00-18:00