読み込みExcelファイル
Python Excel ファイルの読み込みです
こちらの記事で紹介したソースコードを流用
Excelシート[社員リスト]から社員3名分の情報を取得
連想配列と配列を利用して
社員リストを定義します
ソースコード全文 実行結果
取り込みファイルとシートの指定を行います
1 2 3 4 5 6 7 8 9 10 |
import xlrd # 取り込み対象のExcelファイル名 IMPORT_FILE_NAME = "userlist.xlsx" # Excelファイルの読み込み wb = xlrd.open_workbook('C:\\Python\\tmp\\' + IMPORT_FILE_NAME) # [社員リスト]シートを取得 userListSheet = wb.sheet_by_name('社員リスト') |
取り込み対象範囲を指定
社員1名分の情報を管理する変数「userInfo」と定義
連想配列の形式で、userInfo変数へデータを設定します
1名分のuserInfoが作成できたら
複数の社員情報を管理する配列「userInfoList」へ格納
for 分で社員リストの行数分処理を繰り返します
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
################################################ # 範囲を指定してデータを取り込む ################################################ # Excelから読み込んだ社員情報をリストで保持 userInfoList = [] for row_index in range(userListSheet.nrows): # タイトルとヘッダ行を除外して、データ行のみ取得 if row_index >= 2: row = userListSheet.row(row_index) # 1行の情報を連想配列で保持 userInfo = {"No" : row[0].value, "名前" : row[1].value, "年齢" : row[2].value, "部署" : row[3].value, "区分" : row[4].value} # 配列へ格納します userInfoList.append(userInfo) # Excelから読み込んだ結果を出力 print(userInfoList) |
配列 連想配列の展開
for文を利用して、配列を展開します
連想配列は、変数名[“キー名”] の宣言で
アクセス可能です
1 2 3 4 5 6 7 |
for userInfo in userInfoList: print("--------------社員情報--------------") print(userInfo["No"]) print(userInfo["名前"]) print(userInfo["年齢"]) print(userInfo["部署"]) print(userInfo["区分"]) |
実行結果は次の通りです
格納したデータにアクセスできていますね
まとめ:Python Excel ファイルの読み込み データ部のみ抽出 配列化
配列の展開はfor文を使用しました
Pythonでも他の言語と考え方は同じのようですね
配列、連想配列をうまく使うことができれば
ソースコードの可読性向上にもつながります
未来の自分や将来メンテナンスする誰かのためにもわかりやすいソースを
意識してい行きたいですね
コメント