PythonでCSVデータを辞書型に変換する方法について解説します。この方法は、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型で返されます。DictReder関数を使用すれば、その後の処理がしやすいことや、その後のコード実装が楽になります。
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['名前'])
このサンプルコードでは、基本としてDictReader関数を使用して開いたCSVファイルの中身を、1行ずつdict型で出力するプログラムです。さらに、応用編としてDictReader関数を使用し、開いたCSVファイルの中身をdict型でキーを指定して指定して出力するプログラムを作成します。
以上がPythonでCSVデータを辞書型に変換する方法についての解説です。この方法を使えば、CSVデータをより効率的に扱うことができます。