【发布时间】:2014-03-04 03:07:25
【问题描述】:
这个程序有点痛苦。它必须找到平均温度。如果它低于 60,它必须计算有多少数字(平均出来)低于 60。如果平均温度高于 80,它必须对任何高于 80 的数字做同样的事情。编辑:而不是向用户询问 #的值,程序将继续接受,直到给出一个空白值。这是我的程序:
def main():
sums = 0.0
count = 0
heating = 0
cooling = 0
temp = (input("enter a number, <enter> to quit: "))
while temp != " ":
x = float(temp)
sums = sums + x
count = count + 1
temp = eval(input("enter a number, <enter> to quit: "))
avg = sums/count
if avg < 60:
if temp < 60:
heating = heating + 1
if avg > 80:
if temp > 80:
cooling = cooling + 1
print(avg, heating, cooling)
main()
这是我不断收到的错误。我尝试了在有和没有 eval 的情况下询问输入的变体,以及在 float 和 int 之间切换 temp。我不断收到错误,更常见的是这个。
Traceback (most recent call last):
File "C:/Python33/heatingcooling.py", line 24, in <module>
main()
File "C:/Python33/heatingcooling.py", line 13, in main
temp = eval(input("enter a number, <enter> to quit: "))
File "<string>", line 0
^
SyntaxError: unexpected EOF while parsing
任何关于如何让这个程序运行的想法将不胜感激。作为旁注,我们不允许使用原始输入,这似乎是最常见的解决方案
【问题讨论】:
标签: python-3.x while-loop nested-loops