如何用Python从Excel数据生成指定格式的字典?
解决方法
你的问题出在设置index_col=[1,2]时,把第二、第三列设成了字典的键,完全搞反了预期的键值对应关系。下面给两种简单的实现方式:
方法一:行迭代构造字典
直接遍历DataFrame的每一行,手动指定键值对:
import pandas as pd path_sheet = 'path_sheet_name.xls' df = pd.read_excel(path_sheet) my_dic = {row['Column 1']: (row['Column 2'], row['Column C3']) for _, row in df.iterrows()} print(my_dic)
方法二:利用pandas内置方法转换
将Column 1设为索引,再把每行的剩余列转为元组后转字典:
import pandas as pd path_sheet = 'path_sheet_name.xls' df = pd.read_excel(path_sheet, index_col='Column 1') my_dic = df.apply(tuple, axis=1).to_dict() print(my_dic)
两种方法都能输出你想要的格式:
{'a': ('b', 'c'), 'd': ('e', 'f')}
内容的提问来源于stack exchange,提问作者yan
相关产品推荐
相关产品推荐

