python 目次 - ray88’s diary
■dict( )を使うことでいろいろな辞書を作成できる。
・キーと値のタプルのリストから辞書を作る
・キーリストと値のリストを合わせて辞書を作る
【タプル(キー・値)のリストから辞書を作る】
data = dict([("yellow",3),("blue",6),("green",5)]) print("data:",data)
【キーと値のリストを合わせて辞書にする】
・zip( )を利用するとキーのリストと値のリストを合わせて、[キー,値] のタプルのリストをつくることができる。
・タプルのリストから辞書を作れるので、キーのリストと値のリストがあれば
2つを合わせて辞書にすることができる。
・キーと値の個数が一致しない倍は個数が少ない方に合わせて作られる。
・リストに重複するキーがある場合、その値は後からの値で更新される。
keys = ["yellow","blue","green"] values = [3,6,5] data = dict(zip(keys,values)) #辞書に変換する print("data:",data)
出力結果
【リスト[キー,値]のタプルから辞書を作る】
タプルのリストとは逆で、複数の[キー,値]のリストをタプルにして、
これをdict( ) の引き数として渡しても辞書が作れる。
data = dict ((["yellow",3],["blue",6],["green",5])) print(data)
出力結果
【キーワード引数を利用する】
・キーワード引数とは関数の引数名を指定して値を渡す方法
・キーワード引数をdict( ) に対して行うおことで辞書のキーと値を指定できる
・引数名は文字列ではないが、辞書になると文字列のキーとして使われる
※以下のコードではyellow,blue,green の引数名がそのまま辞書のキーになっている
ata = dict(yellow = 3,blue = 6, green = 5) print("data:",data)
出力結果
【サンプルコード】
以下のようなエクセルからディクショナリを生成する
from pathlib import Path import openpyxl import pandas as pd # Path オブジェクトを使用してファイルパスを指定 path = Path("C:/Users/ユーザ名/Desktop/test/dict.xlsx") sheet_name = "Sheet1" excel_data = pd.read_excel(path,sheet_name=sheet_name) # Excelのデータをディクショナリに変換 # キーとして 'Key' 列を、バリューとして 'Value' 列を使用 data_dict = dict(zip(excel_data['Key'], excel_data['Value'])) print("生成されたディクショナリ:", data_dict)
出力結果