PythonでCSVデータを辞書型に変換する方法は、csvモジュールのDictReader
関数を使うことで実現できます。この関数を使うと、CSVデータをキーと値のペアを1つの要素として扱うことができます。
dict型とは
dict型とは、辞書型とも呼ばれるデータの形式のことです。dict型では、キー (key)と値 (value)のペアを1つの要素としてデータを管理しています。
# [list型]
list_data = [値1,値2,値3]
# [dict型]
dict_data = {キー1: 値1, キー2:値2, キー3:値3}
CSVモジュールのDictReader関数について
CSVモジュールのDictReader
関数は、CSVデータをdict型で返す関数です。通常CSVデータをCSVモジュールのReader関数で読み込むとlist型で返されます。DictReader
関数を使用すれば、その後の処理がしやすいことや、その後のコード実装が楽になります。
csv.DictReader('open状態のcsvファイル','ヘッダー情報')
実際に書いてみよう
以下に、DictReader
関数の使い方について、サンプルコードを例に実際に記述します。
# -*- coding: utf-8 -*-
import csv
# Headerを設定する
csv_header = ['生徒番号','名前','名前フリガナ']
# 基本編
print('<<基本編>>')
with open('/content/629.csv', 'r',encoding="utf-8_sig") as f:
# DictReaderと共にHeaderを渡すことで辞書形式で返す。
# 取得したデータを1行ずつ出力。
for row in csv.DictReader(f, csv_header):
print(row)
# 応用編
print('<<応用編>>')
with open('/content/629.csv', 'r',encoding="utf-8_sig") as f:
# キーを指定して名前だけ出力。
for row in csv.DictReader(f, csv_header):
print(row['名前'])