"while" 在 "for" 中不工作(完全忽略)

"while" not working inside "for" (completely ignored)

基本上,当我输入温度时,如果值大于60且小于0,它应该说代码无效,请重新输入,直到它得到一个介于1和59之间的值。但是对于我的代码中,while 循环就像被完全忽略了一样...这是为什么呢?

# TASK 1:
midDayTemp = float()
midNightTemp = float()
midDayList = []
midNightList = []

for day in range (3):
    print ("Day:", day + 1)
    midDayTemp = float(input("Please enter your Mid-Day temperature\n"))


    while midDayTemp >= 60 and midDayTemp <= 0:
         midDayTemp = input("Invalid, please re-enter your temperature\n")

    midDayList.append(midDayTemp)

    midNightTemp = float(input("Please enter your Mid-Night temperature\n"))


    while midNightTemp >= 60 and midNightTemp <= 0:
         midNightTemp = input("Invalid, please re-enter your temperature\n")

    midNightList.append(midNightTemp)
# TASK 2:
print("Mid-Day readings are ",midDayList)
midDayAverage = sum(midDayList) / len(midDayList)
print ("The average is ", midDayAverage)
print("Mid-Night readings are ",midNightList)
midNightAverage = sum(midNightList) / len(midNightList)
print ("The average is ", midNightAverage)


# TASK 3:
minValueMidDay = min(midDayList)
print ("The lowest temperature of the Mid-Day is", minValueMidDay )
maxValueMidDay = max(midDayList)
print ("The highest temperature of the Mid-Day is", maxValueMidDay )
minValueMidNight = min(midNightList)
print ("The lowest temperature of the Mid-Night is", minValueMidNight )
maxValueMidNight = max(midNightList)
print ("The highest temperature of the Mid-Night is", maxValueMidNight )

print ("Thank you for using my code!")

谢谢

那是因为不存在既大于等于60又小于等于0的数。

您必须将 and 更改为 or。

while midDayTemp >= 60 or midDayTemp <= 0: