Python 使用范围函数显示消息

Python 使用范围函数显示消息,python,python-3.x,Python,Python 3.x,我正在为一门课程编写一个程序,该程序需要用户输入考试成绩并对其进行平均。我有一个功能正常的程序,但是我需要添加一个功能,该功能使用一个范围来识别输入的分数超出1-100范围,并显示一条消息分数超出范围。请重新输入 以下是我到目前为止的情况: SENTINEL = float(9999) scores = [] while True: number = float(input("Enter exam score (9999 to quit): ")) if number == S

我正在为一门课程编写一个程序,该程序需要用户输入考试成绩并对其进行平均。我有一个功能正常的程序,但是我需要添加一个功能,该功能使用一个范围来识别输入的分数超出1-100范围,并显示一条消息分数超出范围。请重新输入

以下是我到目前为止的情况:

SENTINEL = float(9999)

scores = []
while True:
    number = float(input("Enter exam score (9999 to quit): "))
    if number == SENTINEL:
        break
    scores.append(number)

if not scores:
    print("No scores entered")
else:
    avg = sum(scores)/len(scores)
    print("average of ", len(scores), " test scores is :", avg)   
试试这个:

SENTINEL = float(9999)

scores = []
while True:
    number = float(input("Enter exam score (9999 to quit): "))

    while number != SENTINEL and (number < 1 or number > 100):
        number = float(input("score out of range. please re enter: "))

    if number == SENTINEL:
        break

    scores.append(number)

if not scores:
    print("No scores entered")
else:
    avg = sum(scores)/len(scores)
    print("average of ", len(scores), " test scores is :", avg)

您已经执行了检查,以查看用户是否输入了特殊输入9999,是什么阻止您执行检查,以查看他们输入的数字是否大于100或小于1?