jsonToxls jsonTocsv csvTojson xlstocsv 文件转换


#coding = utf-8
import xlrd
import csv

# excel 转换 csv
w = xlrd.open_workbook("data.xls")
sheet = w.sheet_by_name(w.sheet_names()[0])
data = []
for row in range(1,sheet.nrows):
    d = {}
    for col in range(sheet.ncols):
        d[sheet.cell_value(0,col)] = sheet.cell_value(row,col)
    data.append(d)
# 将data写入csv
with open("data.csv",mode="w",encoding="utf-8",newline="") as file:

     wirte = csv.DictWriter(file,fieldnames =data[0])
     wirte.writeheader()
     # print(content)
     for i in data:
        wirte.writerow(i)


#coding=utf-8
import json,csv

def csvTojson(a,b):
    global jsonlist
    jsonlist=[]
    with open(a,'r',encoding='utf-8') as fils:
        reader=csv.DictReader(fils)
        for i in reader:
            jsonlist.append(dict(i))
            #读出是列表包字典
    with open(b,'w',encoding='utf-8') as jsond:
        #写入是列表加字典文件
#
ensure_ascii=''不用ascii编码格式
        json.dump(jsonlist,jsond,ensure_ascii='')
        print(jsonlist)
        print('成功')

if __name__ == '__main__':
    csvTojson('date.csv','tojson.json')
#coding=utf-8
import json,csv

def jsonTocsv(paths,pathd):
    global filed
    with open(paths,'r',encoding='utf-8') as filed:
        #读入是列表
        filed=json.load(filed)
        print(filed)
#不空行
    with open(pathd,'w',encoding='utf-8',newline='') as csvfile:
        #字典写入模式
        write=csv.DictWriter(csvfile,filed[0])
        write.writeheader()
        for i in filed:
            write.writerow(i)
        print('成功')

if __name__ == '__main__':
    jsonTocsv('date.json','tocsv.csv')
#coding=utf-8
import json,xlwt
def jsonToexcel(paths,b):
    global filed
    with open(paths,'r',encoding='utf-8') as filed:
        filed=json.load(filed)
        print(filed)
    filepath='D:/untitled/1022toxls.xls'
    workbook=xlwt.Workbook()
    sheet=workbook.add_sheet('sheet1')
#提取表头 写入表头
    header=[i for i in filed[0]]
    for i in range(len(header)):
        sheet.write(0,i,header[i])

#遍历出json列表字典的值
    global listdd
    listdd=[]
    for iss in filed:
        bb=[]
        for j in iss.values():
            bb.append(j)
        listdd.append(bb)
#写入值
    for j in range(1,len(listdd)+1):
        for i in range(len(header)):
            sheet.write(j, i, listdd[j-1][i])

    workbook.save(filepath)
    print('成功')

if __name__ == '__main__':
    jsonToexcel('date.json','toxls.xls')
原文地址:https://www.cnblogs.com/huazhou695/p/9885956.html