0
sheet1、sheet2、sheet3などの名前のワークブックに複数のExcelシートがあり、各シートのデータをヘッダーをキーとして辞書に変換しています。しかし、今では上記の辞書のそれぞれにキーとしてシート名を追加するネストされた辞書を作成したいと思います。私のテーブルは、このフォームの複数のシートがあります。 シート1をシート名をキーとして使用して、PythonでExcelブックから辞書を作成する
IP Address prof type
xx.xx.xx abc xyz
xx.xx.xx efg ijk
Sheet2の
IP Address prof type
xx.xx.xx abc xyz
xx.xx.xx efg ijk
は今、私はこのような試みた:
[{'IP Address': 'xx.xx.xx', 'prof': 'abc', 'type': 'xyz'}, {'IP Address':
'xx.xx.xx', 'prof': 'efg', 'type': 'ijk'}]
what I need is :
[{'Sheet1':{'IP Address': 'xx.xx.xx', 'prof': 'abc', 'type': 'xyz'}, {'IP
Address': 'xx.xx.xx', 'prof': 'efg', 'type': 'ijk'}},
{'Sheet2':{'IP Address': 'xx.xx.xx', 'prof': 'abc', 'type': 'xyz'}, {'IP
Address': 'xx.xx.xx', 'prof': 'efg', 'type': 'ijk'}},
]
:この印刷し
from xlrd import open_workbook
book = open_workbook('workbook.xls')
sheet = book.sheet_by_index(0)
sheet_names = book.sheet_names()
# reading header values
keys = [sheet.cell(0, col_index).value for col_index in range(sheet.ncols)]
dict_list = []
for row_index in range(1, sheet.nrows):
d = {keys[col_index]: sheet.cell(row_index, col_index).value
for col_index in range(sheet.ncols)}
dict_list.append(d)
print (dict_list)
私はproblを持っているブック内の複数のシートのキーとしてシート名を追加します。
ご協力いただければ幸いです。
ありがとうございました。完璧に動作します! – user12083