Python——文本文件score.txt,该文件中存储了某个学期某班级中每个人所有课程的成绩。

本文介绍了一种使用Python从文本文件中读取学生各科成绩,并统计男女学生及特定课程平均成绩的方法。通过解析文件,将成绩数据按性别分类,最终计算并输出平均成绩。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

'''
有如下内容形式的文本文件score.txt,该文件中存储了某个学期某班级中每个人所有课程的成绩。形式为:

李彦宏 男 英语 80

李彦宏 男 电子技术基础 75

李彦宏 男 Python程序设计 88

马云 男 英语 62

马云 男 电子技术基础 63

马云 男 Python程序设计 68

黄蓉 女 英语 90

黄蓉 女 电子技术基础 80

黄蓉 女 Python程序设计 65

 要求编写程序,统计:

(1)该班女生的平均成绩、男生的平均成绩;

(2)该班《Python程序设计》课程的平均成绩。

'''

lis1 = list()
lis2 = list()
dic = dict()
with open('score.txt', 'r',encoding='utf-8') as f:
 for line in f:
  line = line.replace("\n", "")
  if (line != ""):
   lis = line.split(" ")
   tuple1 = tuple(lis)

   if (tuple1[2] == 'Python程序设计'):
    dic[tuple1[3]] = tuple1[2]
   if (tuple1[1] == '男'):
    lis1.append(int(tuple1[3]))
   else:
    lis2.append(int(tuple1[3]))

sum_male = 0
sum_female = 0
sum_python = 0

for i in lis1:
 sum_male += i
for i in lis2:
 sum_female += i
for i in dic.keys():
 sum_python += int(i)

print("该班的男生平均成绩为:{0}  \n女生平均成绩为:{1}".format(sum_male / len(lis1), sum_female / len(lis2)))
print("该班Python程序设计的平均成绩为:", sum_python / len(dic))
f.close()

D:\Python_Demo\homework_2.1\venv\Scripts\python.exe D:/Python_Demo/homework_2.1/homework_11other_05.py
该班的男生平均成绩为:72.66666666666667
女生平均成绩为:78.33333333333333
该班Python程序设计的平均成绩为: 73.66666666666667

更多干货正在赶来,敬请期待……

PS:本文原创首发于公众号「让我遇见相似的灵魂」,回复关键字获取数十本程序员经典电子书。

左手代码,右手吉他,这就是天下:如果有一天我遇见相似的灵魂 那它肯定是步履艰难 不被理解 喜黑怕光的。如果可以的话 让我触摸一下吧
它也一样孤独得太久。 不一样的文艺青年,不一样的程序猿。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

瑞 新

请小哥喝杯茶~

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值