在python3.6中从用户输入中检测最小值

2024-09-28 01:33:43 发布

您现在位置:Python中文网/ 问答频道 /正文

我必须根据用户的输入计算一组值的平均分数,同时在计算平均分数之前去掉最低的分数。我什么都有,除了要删除最小值的代码。我试着使用min函数,但是当在循环中打印时,我得到了“TypeError:'int'object is not iterable”。你知道如何解决这个问题吗?谢谢!你知道吗

numuser=eval(input("How many users are there?: "))
numgrade=eval(input("How many grades will there be for each user?: "))
usercount=0
gradecount=0

while usercount <= numuser:
    name=input("Please enter the user's first and last name: ")
    gradetot=0
    while gradecount < numgrade:
        gradeval=eval(input("Please enter the grade: "))
        gradetot=gradetot+gradeval
        gradecount=gradecount+1

low = min(gradeval)
tot = gradetot-low

print("The average grade for", name, "is :", tot/gradecount)
numuser=numuser-1
usercount=usercount+1
gradecount=0

Tags: nameinputisevalmin分数manyhow
1条回答
网友
1楼 · 发布于 2024-09-28 01:33:43

我已经修改了你的申请,请看下面,并试图了解什么变化需要满足您的要求。你知道吗

numuser=eval(input("How many users are there : " ))
numgrade=eval(input("How many grades will there be for each user : " ))
usercount=0
gradecount=0
gradeval = [] # you need a array to store a range of values

while usercount <= numuser:
    name=input("Please enter the user's first and last name : " )
    gradetot=0
    while gradecount < numgrade:
        val=eval(input("Please enter the grade :  " ))
        gradeval.append(val)
        gradetot=gradetot+val
        gradecount=gradecount+1

low = min(gradeval)# min function need a range of values
tot = gradetot-low

print("The average grade for : ", name, "is : ", tot/gradecount)
numuser=numuser-1
usercount=usercount+1
gradecount=0 

相关问题 更多 >

    热门问题