Python分级程序

Python分级程序,python,function,loops,Python,Function,Loops,所以我需要制作一个程序,给10个学生单独打分,然后显示所有10个学生的平均分数 我认为评分应该是这样的,但我不确定如何设置评分次数的计数,或者如何设置平均值函数。非常欢迎帮助。我是个可怕的程序员 score = int(input("Enter a score between 0 and 100: ")) if score >=89: print("The grade is an A") elif score>=79: print("The grade is a B"

所以我需要制作一个程序,给10个学生单独打分,然后显示所有10个学生的平均分数

我认为评分应该是这样的,但我不确定如何设置评分次数的计数,或者如何设置平均值函数。非常欢迎帮助。我是个可怕的程序员

score = int(input("Enter a score between 0 and 100: "))
if score >=89:
    print("The grade is an A")
elif score>=79:
    print("The grade is a B")
elif score>=69:
    print("The grade is a C")
elif score>=59:
    print("The grade is a D")
else:
    print("The grade is a F")

这应该能奏效

total=0
对于范围(10)内的i:
分数=整数(输入(“输入介于0和100之间的分数:”)
如果得分>=89:
打印(“成绩为A”)
elif得分>=79:
打印(“成绩为a-B”)
elif得分>=69:
打印(“成绩为C”)
elif得分>=59:
打印(“成绩为D”)
其他:
打印(“分数为F”)
总分+=总分
打印(“所有10名学生的平均值:”,总计/10)
for
循环中,您获得每个学生的分数,然后将其添加到所有学生的总数中。循环结束后,将其除以学生总数,因此10


total score/total number of student
total/10

您可以定义一个函数来查找平均分数。将所有分数存储在一个列表中,然后将该列表作为参数传递到函数中

def avg(scores): #assuming scores is the name of the list
    avg = sum(scores)/len(scores) 
    return "Average score is {}".format(avg)
或 对于python3,返回f'平均分数为{avg}'


我不知道你所说的评分次数是什么意思,但我认为你可以包括一个while循环和一个变量,每次评分增加1

您可以尝试使用0-9之间的计数器变量,并使用while循环检查和增加计数器值,在每个循环计算平均值后,继续执行此操作,直到输入最后一个值

Counter = 0
average = 0
while (Counter <= 10):
    score = int(input("Enter a score between 0 and 100: "))
    if score >= 89:
        print("The grade is an A")
    elif score >= 79:
        print("The grade is a B")
    elif score >= 69:
        print("The grade is a C")
    elif score >= 59:
        print("The grade is a D")
    else:
        print("The grade is a F")
    Counter = Counter + 1
    average = (score + average)
average  = average/Counter

print("Average of all 10 students:",average)
计数器=0
平均值=0
而(计数器=89:
打印(“成绩为A”)
elif得分>=79:
打印(“成绩为a-B”)
elif得分>=69:
打印(“成绩为C”)
elif得分>=59:
打印(“成绩为D”)
其他:
打印(“分数为F”)
计数器=计数器+1
平均值=(分数+平均值)
平均值=平均值/计数器
打印(“所有10名学生的平均值:”,平均值)
因此,现在代码只针对10个循环进行了专门配置,但是您可以通过建议一个值来结束循环,而while循环将检查该值,当循环看到该值时,它将退出循环并给出一个值,从而让用户能够确定这一点


每个循环都有一个不断增加的计数器值和一个平均值,该平均值保存输入值的总和,当循环退出时,通过将总和除以计数器来计算平均值,从而得出结果

不同的分数来自何处?错过了一行复制抱歉!我会编辑它。但是第一个行was:score=int(输入(“输入介于0和100之间的分数:”)你的问题很基本,但这没关系——对于新的程序员也是如此,你也分享了到目前为止你所拥有的。你想做一些事情很多次,这意味着你应该查看循环,比如
while
for
。你想在这些循环的过程中跟踪一些事情,所以你需要在单独的v中跟踪可变的,比如分数和分数的总数;另一种方法是记住迄今为止在
列表中给出的所有分数,这样你就可以计算平均值并用这些数据做其他事情。是的,我不擅长措辞。这可能是我是一个如此糟糕的编码员的原因。但这是一种非常酷的方法!我哈我想用谷歌搜索一些东西,但我想我现在明白了。这就是我想要的。很抱歉为一些如此基本的东西打扰你。哈哈!语言方面我认为这是最有意义的。