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("输入格式错误")
求问:如何使用eval(input(<提示内容>))替换现有输入部分?
如果要使用eval(input(<提示内容>))替换现有输入部分这样做,
单位和数字分开,不然无法进行
Tempstr=eval(input("请输入温度值(无单位):"))
D=input("请输入单位:")
if D in ['F','f']:
C=(Tempstr-32)/1.8
print("转换后的温度是{:.0f}C".format(C))
elif D in ['c','C']:
F=1.8*Tempstr+32
print("转换后的温度是{:.0f}F".format(F))
else:
print("输入格式错误")
替换不了。你现在输入的字符串里面其实是2重信息,既有温度,又有单位名称
你用eval强行转换,会丢信息
现在不是好好的吗,为什么非要替换