鱼C论坛

 找回密码
 立即注册
查看: 1691|回复: 2

[已解决]【Python新手求助】学校要做一个统计排名的程序,如何实现?

[复制链接]
发表于 2020-12-13 13:24:20 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
班别试室位置试室号考试号考试座号语文语文名次数学数学名次英语英语名次3科   总分3科   名次
1高一3班303602101001249331210726362898262400
1高一3班303602101002179235011318874.5638279.5233
1高一1班3016021010034069135413043281437227806
1高一12班3126021010045194275341343677961951136
1高一13班313602101005519139356107756.5997203.51051
1高一11班3116021010065120110232759.5954281.5212
1高一16班316602101007298948657106033.51359179.51244
1高一12班31260210100833885446396767.5786218.5897
1高一9班30960210100924741233118131341354226822
1高一8班308602101010348382110035773672256463
1高一20班32060210101154866425011543014041661323
1高一18班3186021010121974123338129956.5997168.51309
1高一12班312602101013358287610627955.51019243.5614
1高一22班32260210101487810775311195510371861211
1高一11班311602101015228664294439521089232756
1高一21班3216021010165383821301387697541821235
1高一22班322602101017408382159102646.51176188.51191
1高一21班32160210101887711197478194305245592
1高一22班3226021010191865141610134164.5846230.5773
1高一19班3196021010202293312797003014042021071
类似这样,怎么给他们按分数排序?学校是想自动生成排名求大神回复
最佳答案
2020-12-13 15:27:28
可以先保存在csv文件中,再对这个文件进行操作
fr = open("学生成绩.csv", "r")
ls = []
for line in fr:
    line = line.replace("\n", "")
    ls.append(line.split(","))
fr.close()

for i in range(1, len(ls)):
    for j in range(1, len(ls)-i):
        if(ls[j][11] < ls[j+1][11]):
            ls[j], ls[j + 1] = ls[j + 1], ls[j]

fw = open("stdent_score.csv", "w")
for i in range(len(ls)):
    fw.write(",".join(ls[i])+"\n")
fw.close()
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-12-13 15:27:28 | 显示全部楼层    本楼为最佳答案   
可以先保存在csv文件中,再对这个文件进行操作
fr = open("学生成绩.csv", "r")
ls = []
for line in fr:
    line = line.replace("\n", "")
    ls.append(line.split(","))
fr.close()

for i in range(1, len(ls)):
    for j in range(1, len(ls)-i):
        if(ls[j][11] < ls[j+1][11]):
            ls[j], ls[j + 1] = ls[j + 1], ls[j]

fw = open("stdent_score.csv", "w")
for i in range(len(ls)):
    fw.write(",".join(ls[i])+"\n")
fw.close()
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-12-13 15:29:52 | 显示全部楼层
实例图片
后.png
前.png
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-1-10 21:05

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表