华氏和摄氏温度的转换
"""
华氏和摄氏温度转换
转换公式如下:
C = (F-32)/1.8
F = C*1.8 +32
"""
#输入一个温度,T得到的是字符串
T = input("""华氏度和摄氏度的温度转换,用F和C区分。
例如:32F表示32华氏度,100C表示100摄氏度
请输入温度:""")#3个"可以换行提示
if T[-1] == "C": #如果摄氏度C结尾
F = eval(T[:-1]) * 1.8 + 32 # eval会将字符串转化成数字,也可用float
print(T,"=",F,"℉")
elif T[-1] == "F": #如果华氏度F结尾
C = (float(T[:-1]) -32) / 1.8 #float会将字符串转化为浮点数(支持小数)
print(T,"=",C,"℃")
else:
print("其它错误") #非标准格式输入
结果1:
华氏度和摄氏度的温度转换,用F和C区分。
例如:32F表示32华氏度,100C表示100摄氏度
请输入温度:32F
32F = 0.0 ℃
结果2:
华氏度和摄氏度的温度转换,用F和C区分。
例如:32F表示32华氏度,100C表示100摄氏度
请输入温度:100C
100C = 212.0 ℉
结果3:
华氏度和摄氏度的温度转换,用F和C区分。
例如:32F表示32华氏度,100C表示100摄氏度
请输入温度:33.3C
33.3C = 91.94 ℉
标准答案比我自己写的好多了。温度单位大小写都可以用,还能自动保留2位小数精度。
参照慕课网的国家精品课程《Python语言程序设计》重新写了代码。
"""
华氏和摄氏温度转换
转换公式如下:
C = (F-32)/1.8
F = C*1.8 +32
"""
#输入一个温度
T = input("请输入温度:")
if T[-1] in ["C", "c"]:
F = eval(T[:-1]) * 1.8 + 32
print(f'{T}={F:.2f}℉')
elif T[-1] in ["F","f"]:
C = (eval(T[:-1])-32) / 1.8
print(f"{T}={C:.2f}℃")
else:
print("输入格式错误")
结果:
请输入温度:12.34C
12.34C=54.21℉
请输入温度:87.65f
87.65f=30.916667℃
请输入温度:87.65f
87.65f=30.92℃
请输入温度:32f
32f=0.00℃
请输入温度:5c
5c=41.00℉
请输入温度:123456789.0123456789f
123456789.0123456789f=68587087.23℃
请输入温度:1024.2048x
输入错误