Python实例温度转换实例常见错误

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("输入格式错误!")

一开始写成这样,但是运行总是错误
在这里插入图片描述
但是string类型也通过eval()转化为int了,还是找不到错误。
后来一点点比对才发现切片写成列表了
应该改为这样:

 C = (eval(TempStr[0:-1]) - 32)/1.8
 F = 1.8*eval(TempStr[0,-1]) + 32

原来把[0:1]写成了[0,1]
修改后才成功,看来一个简单小程序也会错误
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_43582207/article/details/107214751