丢失想象 2020-05-23 14:37 采纳率: 0%
浏览 212

求助大佬们!!!python中重复键的字典创建问题

我想把一个excel数据转化成字典。其中第一列作为key值,
其他列合并成列表作为值。

表格:

图片说明

预期效果是

  {
    'a':[1, 2, 3],[10, 11, 12]...
    'b':[4, 5, 6],[13, 14, 15]...
    'c':[7, 8, 9],[16, 17, 18]...
    }

刚开始用了这样的代码尝试:

def read_excel(bookname, sheetname):
    # 打开Excel文件
    wb = xlrd.open_workbook(bookname)
    sheet = wb.sheet_by_name(sheetname)
    dic = {}
    for i in range(sheet.nrows - 1):
        lis = []
        for j in range(sheet.ncols):
            lis.append(sheet.cell(i + 1, j).value)
        dic[sheet.cell(i + 1, 0).value] = lis  #第一列作为key

    print(dic)
    return dic

但是由于表格中有大量重复的key,所以结果是后面的相同key的value值会覆盖前面的,得到的结果是

  {
    'a':[10, 11, 12]
    'b':[13, 14, 15]
    'c':[16, 17, 18]
    }

怎么搞?提前感谢了!

  • 写回答

1条回答 默认 最新

  • 关注
    评论

报告相同问题?

悬赏问题

  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料