运用json库进行数据的维度转换

在桌面上建立一个以自己学号命名的文件夹,所有实验内容都保存在该文件夹下。

1.在excel里录入如下学生信息,并另存为“学生信息表.csv”(另存为时,保存类型选择CSV)。并按以下步骤进行操作。
在这里插入图片描述
(1) 从CSV文件中读取数据,去掉内容中的逗号,打印到屏幕。

#文件openfile.py
import csv
with open('学生信息表.csv',newline='') as csvfile:
    rows=csv.reader(csvfile)
    for row in rows:
        print('     '.join(row))

在这里插入图片描述
(2) 将数据[‘17010002’, ‘赵四’, ‘女’, ‘自动化1701’]追加到“学生信息表.csv”文件。

#文件csvFile.py
import csv
csvFile = open("学生信息表.csv", "a+")            #创建csv文件
writer = csv.writer(csvFile)                  #创建写的对象
                           
writer.writerow(['17010002', '赵四', '女', '自动化1701'])     #写入列的名称
                             
csvFile.close()

(3) 将“学生信息表.csv”由CSV格式转换成JSON格式。

import json
import os
def csv2json():
    fo=open("学生信息表.csv","r",encoding='gbk')
    ls=[]
    for line in fo:
        line=line.replace("\n","")
        ls.append(line.split(","))
    fo.close()
    w=open("学生信息表.json","w",encoding='gbk')
    for i in range(1,len(ls)):
        ls[i]=dict(zip(ls[0],ls[i]))
    b = json.dumps(ls[1:],sort_keys=True,indent=4,ensure_ascii=False)
    print(b)
    fw.write(b)
    # print(b)  
    fw.close()
if __name__ == "__main__":
    csv2json()
发布了30 篇原创文章 · 获赞 8 · 访问量 1813

猜你喜欢

转载自blog.csdn.net/ingenuou_/article/details/103809158