python中 将json数据转化为excel表格

python中 将json数据转化为excel表格python 中将 json 数据结构转化为 excel 表格 json 数据 我的数据类型是 列表嵌套字典 先通过 csv 模块将 json 数据类型转化为 csv 格式 usr bin python3 coding utf 8 importcsv 获取 数据 importjsonwi json txt r asf

python中将json数据结构转化为excel表格

文件数据

[ { 
   "name":"23675-用户增长产品经理(北京)", "csategory":"产品/项日类", "count":"1", "loaction":"一北京", "tiem":"2018-08-06", }, { 
    "name":"23675-用户增长产品经理(北京)", "category":"产品/项日类", "count":"1", "loaction":"一北京", "tiem":"2018-08-06" }, { 
    "name":"23675-用户增长产品经理(北京)", "category":"产品/项日类", "count":"1", "loaction":"一北京", "tiem":"2018-08-06"}, { 
    "name":"23675-用户增长产品经理(北京)", "category":"产品/项日类", "count":"1", "loaction":"一北京", "tiem":"2018-08-06" } ] 

报错问题总结

  • JSONDecodeError: 一般为json格式错误
  • json在线解析和格式校验
  • keyerror: 这种错误没复现。如果有这种错误,把文件数据发出来,再瞅瞅

两种形式转换为excel

一、直接写入到excel

  • 前提需要安装 tablib
  • 命令: pip install tablib[all]
#!/usr/bin/python3 # -*- coding: utf-8 -*- import json import tablib # json.text文件的格式: [{"a":1},{"a":2},{"a":3},{"a":4},{"a":5}] # 获取json数据 with open('json.txt', 'r') as f: rows = json.load(f) # 将json中的key作为header, 也可以自定义header(列名) header=tuple([ i for i in rows[0].keys()]) data = [] # 循环里面的字典,将value作为数据写入进去 for row in rows: body = [] for v in row.values(): body.append(v) data.append(tuple(body)) data = tablib.Dataset(*data,headers=header) open('data.xls', 'wb').write(data.xls) 

二、先通过csv模块将json数据类型转化为csv格式,再导入表格

 #!/usr/bin/python3 # -*- coding: utf-8 -*- import csv # 获取json数据 import json with open('json.txt', 'r') as f: rows = json.load(f) # 创建文件对象 f = open('data.csv', 'w') # 通过文件创建csv对象 csv_write = csv.writer(f) # writerow: 按行写入, writerows: 是批量写入 # 写入数据 取列表的第一行字典,用字典的key值做为头行数据 csv_write.writerow(rows[0].keys()) # 循环里面的字典,将value作为数据写入进去 for row in rows: csv_write.writerow(row.values()) # 关闭打开的文件 f.close() 

这是csv格式数据,以逗号分隔

这里写图片描述

先新建excel表格

这里写图片描述

找到数据里面的自文本,导入上面的csv格式文件
这里写图片描述
选择逗号分隔,下面是数据预览,没问题就可以点下一步了
这里写图片描述
按照上面不走来即可,就可以看到数据已经转为表格形式了。
这里写图片描述




版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/232338.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 如何用phpmyadmin导入大容量.sql文件,直接使用cmd命令进行导入

    如何用phpmyadmin导入大容量.sql文件,直接使用cmd命令进行导入

    2021年10月15日
    48
  • 操作系统虚拟存储管理实验报告_虚拟存储器技术

    操作系统虚拟存储管理实验报告_虚拟存储器技术操作系统虚拟存储管理实验开辟一块内存空间,作为模拟内存(malloc)空间大小为2^14字节假设系统的页面大小为256字节,每个页表项占4个字节(系统的物理页面数为2^6,每个页表正好占一个页面)用位图刻画内存页面的分配状态,可以用一个辅助的变量来对空闲内存页面计数每个进程的虚拟地址空间也是2^14字节每个进程分配9个页面(连页表一共10个页面)创建12个作业,并模拟作业的运行…

    2022年9月26日
    7
  • ps基础快捷键_ps确定的快捷键

    ps基础快捷键_ps确定的快捷键ps快捷键常用表,ps快捷键大全!天下武功,唯快不破!看完这篇PS快捷键使用指南,帮你掌握最常用的32个Photoshop快捷键!注:左上为Mac快捷键,右上为PC快捷键1、Command+T:自由变形该快捷键,主要对图层进行旋转、缩放等变形调整,同时可以拖动修改图层在画面中的位置,是极为常用的功能键。2、Command+J:复制图层对图层的复制,一般的操作是通过图层菜单栏选择,或者…

    2022年9月29日
    2
  • NVL()函数

    NVL()函数NVL()函数是Oracle中的一个函数,NVL()函数的功能是实现空值的转换。NVL()函数的功能是实现空值的转换。例如NVL(string1,replace_with)中:当第一个参数(string1)为空时,返回第二个参数(replace_with);当第一个参数(string1)不为空时,则返回第一个参数(string1)。NVL()函数的第一个参数和第二个参数类型必须相同,或…

    2022年7月13日
    16
  • Docker设置2375端口「建议收藏」

    Docker设置2375端口「建议收藏」Docker设置2375端口1.查看docker.service文件位置2.修改docker.service文件1.查看docker.service文件位置systemctlstatusdockerdocker.service路径为:/usr/lib/systemd/system/docker.service2.修改docker.service文件…

    2022年5月5日
    315
  • 如果要将二叉树{16,14,10,8,7,9,3}_二叉分枝

    如果要将二叉树{16,14,10,8,7,9,3}_二叉分枝有一棵二叉苹果树,如果树枝有分叉,一定是分两叉,即没有只有一个儿子的节点。这棵树共 N 个节点,编号为 1 至 N,树根编号一定为 1。我们用一根树枝两端连接的节点编号描述一根树枝的位置。一棵苹果树的树枝太多了,需要剪枝。但是一些树枝上长有苹果,给定需要保留的树枝数量,求最多能留住多少苹果。这里的保留是指最终与1号点连通。输入格式第一行包含两个整数 N 和 Q,分别表示树的节点数以及要保留的树枝数量。接下来 N−1 行描述树枝信息,每行三个整数,前两个是它连接的节点的编号,第三个数是这根树枝上

    2022年8月9日
    9

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号