我正在使用xlrd從xls電子表格讀取數據。首先,本人收集的,其中包含我需要的(不一定是在同一列的每個實例)的數據列的索引:使用Python映射excel中的數據
amr_list, pssr_list, inservice_list = [], [], []
for i in range(sh.ncols):
for j in range(sh.nrows):
if 'amrprojectnumber' in sh.cell_value(j,i).lower():
amr_list.append(sh.cell_value(j,i))
if 'pssrnumber' in sh.cell_value(j,i).lower():
pssr_list.append(sh.cell_value(j,i))
if 'inservicedate' in sh.cell_value(j,i).lower():
inservice_list.append(sh.cell_value(j,i))
現在我有三個列表,我需要用寫作數據添加到新的工作簿。一行中的值是相關的。因此,一個列表中某個項目的索引對應於其他列表中項目的相同索引。
amr_list
具有重複的字符串值。例如:
['4006BA','4006BA','4007AC','4007AC','4007AC']
的pssr_list
總是共享相同的值作爲amr_list
但是具有附加的信息:
['4006BA(1)','4006BA(2)','4007AC(1)','4007AC(2)','4007AC(3)']
最後,inservice_list
可以或可以不包含可變日期(如從Excel讀取) :
[40780.0, '', 40749.0, 40764.0, '']
這是我從數據想要的結果:
amr = { '4006BA':[('4006BA(1)',40780.0),('4006BA(2)','')], '4007AC':[('4007AC(1)',40749.0),('4007AC(2)',40764.0),('4007AC(3)','')] }
但是我很難弄清楚如何簡單的方法到達那裏。提前致謝。
感謝您的幫助! – ionalchemist