まとめページは以下↓より。
やりたいこと
操作したい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で結合する処理は不要となる。
辞書リストに格納する考え方の補足は以下↓より。
以上