zoukankan      html  css  js  c++  java
  • json to csv

    json(JavaScript Object Notion)文件格式:

    data = '{"employee_details":[{"employee_name": "James", "email": "james@gmail.com", "job_profile": "Sr. Developer"},
                                {"employee_name": "Smith", "email": "Smith@gmail.com", "job_profile": "Project Lead"}]}'

    读取json文件

    file_need = "/Users/~/Desktop/employee.json"
    with open(file_need) as json_file1:
        json_data = json.load(json_file1)
    emp_data = json_data['employee_details']
    # print(emp_data)

    新建csv文件, 并写入

    employ_data = open('/tmp/EmployData.csv', 'w')
    csvwriter = csv.writer(employ_data)
    
    count = 0
    for emp in emp_data:
        if count == 0:
            header = emp.keys()
            csvwriter.writerow(header)
            count += 1
        csvwriter.writerow(emp.values())
    
    employ_data.close()

    完成后 go to finder /tmp/EmployData.csv 查看文件

    附: 完整代码

    # 把json 文件转化为csv 文件
    
    ''' json(JavaScript Object Notation) 文件格式
    data = '{"employee_details":[{"employee_name": "James", "email": "james@gmail.com", "job_profile": "Sr. Developer"},
                                {"employee_name": "Smith", "email": "Smith@gmail.com", "job_profile": "Project Lead"}]}'
    '''
    
    import json,csv
    
    employee_data = '{"employee_details":[{"employee_name": "James", "email": "james@gmail.com", "job_profile": "Sr. Developer"},{"employee_name": "Smith", "email": "Smith@gmail.com", "job_profile": "Project Lead"}]}'
    employee_parsed = json.loads(employee_data)
    emp_data = employee_parsed['employee_details']
    # print(emp_data)
    
    # open a file for writing
    
    employ_data = open('/tmp/EmployData.csv', 'w')
    
    # create the csv writer object
    
    csvwriter = csv.writer(employ_data)
    
    count = 0
    
    for emp in emp_data:
        if count == 0:
            header = emp.keys()
            csvwriter.writerow(header)
            count += 1
    
        csvwriter.writerow(emp.values())
    
    employ_data.close()
  • 相关阅读:
    软件定义网络基础---REST API的设计规范
    软件定义网络基础---REST API概述
    软件定义网络基础---北向接口协议概述
    软件定义网络基础---SDN控制平面
    软件定义网络基础---NETCONF协议
    判断是否是完全二叉树
    G: 又见模法师
    欧拉定理+欧拉筛选法
    hdu-2036求任意多边形面积
    hdu1754 区间更新查询(单点更新+查询求区间最大值)
  • 原文地址:https://www.cnblogs.com/v113/p/14696692.html
Copyright © 2011-2022 走看看