
python题!求大佬帮助?
2.(选做)找到数学成绩最好的和不及格的成绩,并给出提示在文件中的第几行? 展开
import numpy as np
with open(r"C:\Users\Administrator\Desktop\grade.txt","r") as f:
row = [] #行号
values = [] #成绩
max_g = [] #最好成绩的行号
bjg_g = []
for num,value in enumerate(f):
row.append(num)
values.append(int(value.strip('\n')))
group = [row, values]
sum_n = sum(values) #总成绩
average_n = np.min(values) #平均成绩
max_n = max(values) #最好成绩
for index in range(len(values)):
if values[index] == max_n:
max_g.append(index+1)
if values[index] < 60:
bjg_g.append(index+1)
print('成绩总和:'+str(sum_n))
print("平均成绩:"+str(average_n))
print("成绩最好的行号:",end='')
print(max_g)
print("成绩不及格的行号:",end='')
print(bjg_g)
import re
with open('F:\python\练习01\grade.txt','r',encoding="utf-8") as f :
strlist = f.readlines()
count = 1
dic = {}
for i in strlist:
grade_num = re.findall('(\d+)',i)[0]
dic[count] = int(grade_num)
count += 1
#现在处理字典就好了,没第一行的 就是 字典里的 count 值
num = sum(x for x in dic.values()) #总和
num1 = num / len(dic) #平均分
num2 = max(dic.values()) # 最高分
num3 = min(dic.values()) # 最低分
print("总共分数:",num , "总人数:", len(dic),"平均分:",num1,"最高分:",num2,"最低分:",num3)
# 判断不及格的成绩 提示在文中第几行
num4 =[x for x in dic.values() if x < 60] #不及格分数列表
for i in num4:
for key, value in dic.items():
if i == value:
print("第", key ,"行", value,"不及格")
广告 您可能关注的内容 |