温度转换异常处理

温度刻画有两个不同的体系:摄氏度(Celsius)和华氏度(Fabrenheit)要求两种体系互换

转换算法如下:C为摄氏度,F为华氏度

C = (F-32)/1.8

F = C * 1.8 + 32

要求输入输出的字符串以C、c、F、f;考虑输入异常的问题,如输入不合法则抛出异常

try:
    TempStr = input()
    if TempStr[-1] in ['F', 'f']:
        C = (eval(TempStr[0:-1]) - 32) / 1.8
        print("{:.2f}C".format(C))
    elif TempStr[-1] in ['C', 'c']:
        F = 1.8 * eval(TempStr[0:-1]) + 32
        print("{:.2f}F".format(F))
    else:
        print("输入错误,末位只能是'C','c','F','f'")
except NameError:
    print('试图访问的变量名不存在')
except SyntaxError:
    print('存在语法错误')
except Exception as e:
    print(e)

  

原文地址:https://www.cnblogs.com/cnn-ljc/p/12711690.html