千家信息网

Python如何数据处理csv的应用

发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,今天小编给大家分享一下Python如何数据处理csv的应用的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我
千家信息网最后更新 2026年11月01日Python如何数据处理csv的应用

今天小编给大家分享一下Python如何数据处理csv的应用的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。

题目

文件scores.csv包含十位学生的成绩单,表头是"姓名 语文 数学 英语"。请编程完成下述功能。
1)计算每位学生的总分与排名,并将扩充后的学生信息写入文件data.csv中,新文件表头是"姓名 语文 数学 英语 总分 名次";
2)同时,在控制台上分行输出各门课的最高分与最低分以及对应的学生姓名,输出格式为"课程名 :(最高分,学生1,… ,学生n),(最低分,学生1,… ,学生n)";
3)如果总分相同,则同一名次下可能有多人并列,如果最高分或最低分有多人相同,则将这么多人按字母序先后写在同一个元组中。

代码

fr=open("scores.csv","r")fw=open("data.csv","w")ls=[]for line in fr:    line=line.replace("\n","")    ls.append(line.split(","))ChMax=[0,'']ChMin=[100,'']MaMax=[0,'']MaMin=[100,'']EnMax=[0,'']EnMin=[100,'']#当函数有list或者 dictionary 作为形参时,会改变其实参的值(在函数中若改动其值)#但是若不想实参的值收到影响,在传参的时候可以使用[].copy方法。list和dictionary都有copy方法。# def updateMaxMin(Max,Min,score,i):#     if(score>Max[0]):#         Max=[0,'']#         Max[0]=score#         Max[1]=ls[i][0]#     elif(score==Max[0]):#         Max.append(ls[i][0])#     if(score ChMax[0]):        ChMax = [0, '']        ChMax[0] = chScore        ChMax[1] = ls[i][0]    elif (chScore == ChMax[0]):        ChMax.append(ls[i][0])    if (chScore < ChMin[0]):        ChMin = [100, '']        ChMin[0] = chScore        ChMin[1] = ls[i][0]    elif (chScore == ChMin[0]):        ChMin.append(ls[i][0])    #数学最高分最低分更新    maScore=eval(ls[i][2])    if (maScore > MaMax[0]):        MaMax = [0, '']        MaMax[0] = maScore        MaMax[1] = ls[i][0]    elif (maScore == MaMax[0]):        MaMax.append(ls[i][0])    if (maScore < MaMin[0]):        MaMin = [100, '']        MaMin[0] = maScore        MaMin[1] = ls[i][0]    elif (maScore == MaMin[0]):        MaMin.append(ls[i][0])    #英语最高分最低分更新    enScore=eval(ls[i][3])    if (enScore > EnMax[0]):        EnMax = [0, '']        EnMax[0] = enScore        EnMax[1] = ls[i][0]    elif (enScore == EnMax[0]):        EnMax.append(ls[i][0])    if (enScore < EnMin[0]):        EnMin = [100, '']        EnMin[0] = enScore        EnMin[1] = ls[i][0]    elif (enScore == EnMin[0]):        EnMin.append(ls[i][0])#将二维列表中每一行按照总分从大到小排序#这里我用的是冒泡排序for i in range(1,len(ls)):    for j in range(i+1,len(ls)):        if ls[i][4]

这段代码是可以正常运行的,但是更新最大最小成绩,我想把它分装成一个函数,但是运行失败了,代码我注释掉了,如果大家能看出来哪里错了的话,希望能告诉我一样。这里我只是用了最笨的方法

运行实例

scores.csv

data.csv

控制台

以上就是"Python如何数据处理csv的应用"这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注行业资讯频道。

学生 总分 名次 知识 篇文章 数据 最低 最高 代码 函数 多人 姓名 数学 文件 方法 最高分 表头 语文 英语 运行 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 江苏根荣互联网科技 科技互联网项目 鸠鸠互联网科技 深圳互联网科技公司 九亚互联网科技 百单互联网科技有限公司 一五八零互联网科技 互联网金融和金融科技 华脉科技工业互联网产品 来此购互联网科技有限公司 苏州铭阳互联网科技有限公司 本届互联网博览会上的黑科技 用友工业互联网科技发展 高科技互联网套路 皮皮虾互联网科技有限公司 互联网相关科技技术 下一代互联网重大应用科技园 抖集互联网科技技术咨询 万物互联网智能科技 北京天晋互联网科技有限公司 精品咖啡豆 科技赋能下的互联网金融 互联网科技公司的优势 科技与互联网发展 银川新华互联网科技职业技术培训学校图片 栖莱科技互联网股份有限公司 明优互联网科技有限公司 广州千川互联网科技有限公司 上海万顺科技互联网有限公司招聘 株洲百竞科技的互联网营销顾问
0