Python把excel文件数据转化为字典格式存储详解

 更新时间:2023年08月22日 10:19:33   作者:兔子爱读书  
这篇文章主要介绍了Python把excel文件数据转化为字典格式存储详解,在Python中有时候需要操作excel表格的数据,把excel表格转化为字典存起来,方便读取,今天我们就来看看如何转换,需要的朋友可以参考下

Python把excel文件数据转化为字典格式存储

【需求描述】

把excel表格转化为字典存起来,方便读取。

【步骤】

例如下面表格为“值班表.xlsx”

datenameage
20200617xiaowang16
20200618xiaozhang18

(1)把“值班表.xlsx”另存为无格式的“值班表.csv”。默认是以逗号作为分隔符。

(2)把第一列的日期作为关键字,构建空字典。例如,dic = {'20200617': {}, '20200618':{}}。

(3)关键字对应的值为二级字典,二级关键字为name和age。

最终字典为

dic = {'20200617': {'name': 'xiaowang', 'age':16}, '20200618':{'name': 'xiaozhang', 'age':18}}

【代码】

def get_dic_from_csv(file_path):
    with open(file_path, 'r') as fd:
        raw_data = fd.readlines()
    headline = raw_data[0].strip().split(",")
    data = [it.strip().split(",") for it in raw_data[1:]]
    keys = [it[0] for it in data]   # (行名)日期是一级索引
    sub_keys = headline[1:]          # (列名)标题是二级索引
    dic = dict(zip(keys, [{} for i in range(len(keys))]))
    for line in data:
        key = line[0]
        if dic[key] != {}:
            print("Error: repeated values", key, dic[key])
        else:
            value = dict(zip(sub_keys, [int(it) for it in line[1:]]))
            dic[key] = value
    import os, json
    out_path = os.path.splitext(file_path)[0] + ".json"
    with open(out_path, "w") as fd:
        json.dump(dic, fd)    

到此这篇关于Python把excel文件数据转化为字典格式存储详解的文章就介绍到这了,更多相关Python的excel转化为字典内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • PyCharm如何添加外部工具

    PyCharm如何添加外部工具

    文章介绍了如何在Qt Designer中进行可视化UI设计,并提供了添加外部工具的方法,包括Qt Designer、PyUIC和PyRCC,这些工具可以帮助将UI设计文件转换为Python代码,方便进一步开发
    2026-03-03
  • python中的hashlib和base64加密模块使用实例

    python中的hashlib和base64加密模块使用实例

    这篇文章主要介绍了python中的hashlib和base64加密模块使用实例,hashlib模块支持的加密算法有md5 sha1 sha224 sha256 sha384 sha512,需要的朋友可以参考下
    2014-09-09
  • Python使用openpyxl从URL读取Excel并获取单元格样式

    Python使用openpyxl从URL读取Excel并获取单元格样式

    这篇文章主要为大家详细介绍了如何基于openpyxl库实现从URL读取Excel文件并提取单元格内容和样式信息的方法,文中的示例代码讲解详细,感兴趣的小伙伴可以了解下
    2026-01-01
  • Python机器学习NLP自然语言处理Word2vec电影影评建模

    Python机器学习NLP自然语言处理Word2vec电影影评建模

    本文是Python机器学习NLP自然语言处理系列文章,带大家开启一段学习自然语言处理 (NLP) 的旅程. 本篇文章主要学习NLP自然语言处理基本操作Word2vec电影影评建模
    2021-09-09
  • Python3实现抓取javascript动态生成的html网页功能示例

    Python3实现抓取javascript动态生成的html网页功能示例

    这篇文章主要介绍了Python3实现抓取javascript动态生成的html网页功能,结合实例形式分析了Python3使用selenium库针对javascript动态生成的HTML网页元素进行抓取的相关操作技巧,需要的朋友可以参考下
    2017-08-08
  • python面向对象版学生信息管理系统

    python面向对象版学生信息管理系统

    这篇文章主要为大家详细介绍了python面向对象版学生信息管理系统,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-06-06
  • 使用Python进行数据备份的指南大全

    使用Python进行数据备份的指南大全

    利用Python进行数据备份与恢复是一种常见的做法,对于数据库,你可以使用Python中的数据库连接库(如sqlite3、SQLAlchemy等)连接到数据库,然后执行备份操作,将数据库的内容保存到一个备份文件中,本文给大家介绍了使用Python进行数据备份的指南大全,需要的朋友可以参考下
    2024-05-05
  • Python命令行参数定义及需要注意的地方

    Python命令行参数定义及需要注意的地方

    这篇文章主要介绍了Python命令行参数定义及需要注意的地方,帮助大家更好的理解和学习python,感兴趣的朋友可以了解下
    2020-11-11
  • pytorch载入预训练模型后,实现训练指定层

    pytorch载入预训练模型后,实现训练指定层

    今天小编就为大家分享一篇pytorch载入预训练模型后,实现训练指定层,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-01-01
  • 关于yolov5的一些简单说明(txt文件、训练结果分析等)

    关于yolov5的一些简单说明(txt文件、训练结果分析等)

    使用YOLOV5训练数据之后我们需要一些评判标准来告诉我们所训练的效果究竟如何,下面这篇文章主要给大家介绍了关于yolov5的一些简单说明,主要是txt文件、训练结果分析等的相关资料,需要的朋友可以参考下
    2022-06-06

最新评论