PythonでExcel操作:ファイルの読み込みと辞書リストへの格納

まとめページは以下↓より。

やりたいこと

操作したいExcelのファイル名を入力し、入力したファイルを読み込んで辞書リストに格納する。

処理

※ソースを格納するprgフォルダ、インプットファイルを格納するindataフォルダ、出力ファイルを格納するoutdataフォルダ(今回は使用無し)を並列で構成している。

#ライブラリのインポート
import os
import openpyxl

#辞書リストを作る関数
def make_shipment(sh):
    shipment_list = []
    for row in sh.iter_rows():
        if row[0].row == 1:
            header_cells = row
        else:
            row_dic = {}
            for v, k in zip(header_cells, row):
                row_dic[v.value] = k.value
            shipment_list.append(row_dic)
    return shipment_list

#ファイル名を入力させる
print("ファイル名を入力:")
input_file = input()

#ファイルパスを作成
print("入力データ:",input_file)
file_path = os.path.join("..\indata" , input_file)
print("生成パス:",file_path)

#Excelファイル読み込み処理と辞書リストの作成
wb = openpyxl.load_workbook(file_path)
sh = wb.active
shipment_list = make_shipment(sh)

#確認用
print(shipment_list)

ちなみにフルパスを入力させる場合はinput()にそのまま渡し、os.path.joinで結合する処理は不要となる。

辞書リストに格納する考え方の補足は以下↓より。

以上

タイトルとURLをコピーしました