"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:
基本上,当我输入温度时,如果值大于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: