2016-11-30 79 views
0

我已经从Excel表格的两列中提取了需要的数据作为两个列表。当我试图将这两个列表合并成一个字典时,最终的输出只有300个条目,而我的Excel表格有大约1200个条目。为什么不是所有的条目都存储在字典中?将两个列表组合成一个字典

这里是我的代码:

import xlrd 

xl_workbook = xlrd.open_workbook("my_doc.xls") 
sheet1 = xl_workbook.sheet_by_index(0) 

list1 = sheet1.col_values(2) 
list2 = sheet1.col_values(3) 

data = dict(zip(list1, list2)) 

我试过列表1,列表2的印刷长度和数据交叉检查。

+1

你确定'list1'中没有重复的条目吗? – Thomas

+0

刚才意识到有多个重复的条目。 – alapalak

回答

1

Dictionaries只能包含唯一键。检查set(list1)的长度以查看您拥有多少个唯一密钥。

+0

因此,如果我需要所有条目出现在我的输出中,最好的方法是什么?我需要list1中的每个条目与list2中的每个条目相对应 – alapalak

+0

您认为'data [repeated_entry]'应该返回什么? – Thomas

+0

我需要我的最终输出是一个有两列的excel工作表 - list1和list2 - 所有1200个条目。 – alapalak