diadia

興味があることをやってみる

csvモジュールのメモ

関連記事

csvモジュールの使い方

リストデータをファイルとしてアウトプットしたい場合にcsvファイルとして吐き出すのは便利。
csvモジュールの使い方を簡単にメモしておく。

import csv

writerオブジェクトを作成する

1行書くか複数行書くかのメソッドがある。そのメソッドを使うためのオブジェクトがwriterオブジェクト。
writerで返されるのがwriterオブジェクトである。

csv.writer(ファイルオブジェクト)

1行書く場合

writer で返されたオブジェクトにwriterowメソッドを使う。

w.writerow(シーケンス)

複数行書く場合

writer で返されたオブジェクトにwriterowsメソッドを使う。

w.writerows(シーケンス)

csvファイルの読み込み

csvファイルの一行目がカラムの説明になる場合がある。読み込みの際にこの一行目を省いて2行目以降のデータのみ読み込む方法を調べた。
https://docs.python.jp/3/library/csv.html#reader-objects
http://www.bokupy.com/detail/67

import csv 

with open("book1.csv", "r") as f:
    reader = csv.reader(f)
    for row in reader:
        if reader.line_num == 1:
            continue
        print(row)

重要な点として、reader.line_numを使うことのほか、continueも重要である。continueはfor構文中にcontinueに出くわしたとき、今の現在のループを中断し、次の繰り替し処理を行う動作になる。