温度计算器输出的温度不正确?

时间:2013-11-01 21:26:10

标签: python

我已经尝试在python中制作温度转换计算器。什么是错的任何帮助?我输入20C,它告诉我20c=52f,我知道这是不正确的。这是代码:

def convert(changeto,temp):
    if changeto == "c":
        converted = (5/9)*(temp-32)
        print '%d C =  %d F' % (temp,converted)
    elif changeto == "f":
        converted = (9/5)*(temp+32)
        print '%d F = %d C' % (temp, converted)
    else:
        print "Error, type C or F for Celsius or Fahrenheit conversions."

print "Temperature Converter"

temp = float(raw_input("Enter a temperature: "))
changeto = str(raw_input("Convert to (F)ahrenheit or (C)elsius? "))

convert(changeto,temp)

raw_input("Any key to exit")

1 个答案:

答案 0 :(得分:3)

根据您的Python版本,5/9可能评估为零。将其更改为5./9(该点将5转换为floating-point字面值。

另一个部门也是如此。

最重要的是,你拥有的两个公式并不是彼此相反的,需要重新检查。