Pythonでリストを辞書に変換する
利用シーン
データをDBから取ってきたときに、Python内で利用しやすいように辞書として使いまわしたいなと思ったときに利用した。
実装の概略
テーブルからデータを取得。その結果を、辞書のキーをカラム名にして辞書として使う。
column_list = ["id", "product_name", "description"] select_list = ["1","Good Box", "とても良い箱です"] # ここが実際にはSELECTした結果 new_dict = dict(zip(column_list, select_list))
例えば、SQLITEで一意にデータを取ってきた場合などは、
import sqlite3 conn = sqlite3.connect('sample.db') c = conn.cursor() sql = "select id, product_name, description from tbl_product where id = 1" c.execute(sql) column_list = ["id", "product_name", "description"] tbl_product = dict(zip(columns, c.fetchone())) c.close() conn.close()
のようにして辞書として使いまわせるようになる。