Python将JSON数据写入Excel并计算总分与平均分
本文介绍如何使用Python将JSON格式的成绩数据读取并写入Excel文件。通过json模块解析数据,利用xlwt库创建Excel工作表,自动计算每位学生的总分与平均分,并将结果保存为xls格式文件,供学习参考。
本示例展示了如何使用Python脚本读取JSON文件并将其内容转换为Excel表格,供读者参考具体实现细节。
一、需求分析
1、源文件 'score.json' 的数据结构如下:
{
"1":["小花",99,100,98.5],
"2":["小王",90,30.5,95],
"3":["小明",67.5,49.6,88]
}
2、目标是将JSON数据读取后保存至数据库(此处指Excel文件),并自动计算每位学生的总分及平均分。
二、代码实现
import json, xlwt
def read_score(jsonfile):
with open(jsonfile, encoding='utf-8') as f: # 将json文件转化为字典
score_all = json.load(f)
book = xlwt.Workbook() # 创建excel文件
sheet = book.add_sheet('sheet1') # 创建一个表
title = ['序号', '姓名', '语文', '数学', '英语', '总分', '平均分']
for col in range(len(title)): # 存入第一行标题
sheet.write(0, col, title[col])
row = 1 # 定义行
for k in score_all:
data = score_all[k] # data保存姓名和分数的list
data.append(sum(data[1:4])) # 倒数第二列加入总分
data.append(sum(data[1:4]) / 3.0) # 最后一列加入平均分
data.insert(0, k) # 第一列加入序号
for index in range(len(data)): # 依次写入每一行
sheet.write(row, index, data[index])
row += 1
book.save('score.xls')
read_score('score.json')
以上是本文的全部内容,希望能为读者的学习提供有益的帮助,同时也欢迎大家继续支持本站获取更多技术资源。
免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。









