Python入門【CSVファイルの読み込み・書き込み】

Python CSV

こんにちは、ミナトです。

「PythonでCSVファイルの操作はどうやるの?」

というあなたのために今回はCSVファイル操作について解説します。

初心者にも分かりやすく解説していますので、ぜひご確認ください。

CSVファイルの読み込み・書き込み

CSVファイルの書き込み

CSVファイルの書き込みでは、csv.DictWriterクラスのインスタンスを利用します。

csv.DictWriterクラスのコンストラクタの引数には、ファイルオブジェクトと列名をリスト形式で渡します。

DictWriterクラス

writer = csv.DictWriter(ファイルオブジェクト, fieldnames=列名のリスト)

続いて、ヘッダーの書き込みにはwriteheader()メソッドを利用します。

writeheader()メソッド

writer.writeheader()

さらに一行ずつデータを追加するためにwriterow()メソッドを実行します。

writerow()メソッドの引数には列名: 値の形式でディクショナリを渡します。

writerow()メソッド

writer.writerow({‘列名’: 値, …})

import csv


with open('sample.csv', 'w') as f:
    fieldnames = ['name', 'age']
    writer = csv.DictWriter(f, fieldnames=fieldnames)
    writer.writeheader()
    writer.writerow({'name': 'Tanaka', 'age': 22})
    writer.writerow({'name': 'Yamada', 'age': 25})


## sample.txt
name,age
Tanaka,22
Yamada,25

CSVファイルの読み込み

CSVファイルの読み込みには、csv.DictReaderクラスを利用します。

DictReaderクラス

reader = csv.DictReader(ファイルオブジェクト)

以下の例のようにfor文で一行ずつデータを取得できます。

import csv


with open('sample.csv', 'r') as f:
    reader = csv.DictReader(f)
    for row in reader:
        print(row['name'], row['age'])


## 出力
Tanaka 22
Yamada 25

まとめ

今回はPythonでCSVを操作する方法について紹介しました。

csvモジュールを利用すると簡単にCSVの読み込みや書き込みを行えます。

最後まで読んでいただき、ありがとうございます。

この記事が、「面白いな」、「勉強になったな」という方は、SNSでシェアしていただけると嬉しいです。