Python写温度转化

Python021

Python写温度转化,第1张

我们都知道,现在通用的温度有2种,一种是 摄氏度 ,另一种是 华氏度

至于想要深入了解的小伙伴,给你们加上了链接:

摄氏度: 用符号 C表示,是世界上使用较为广泛的 温标 之一

网址: https://baike.baidu.com/item/%E6%91%84%E6%B0%8F%E5%BA%A6/7704261?fr=aladdin

华氏度: 符号 。华氏度 = 32+ 摄氏度 1.8

网址: https://baike.baidu.com/item/%E5%8D%8E%E6%B0%8F%E5%BA%A6/9982416?fr=aladdin

第一步: 先用input()输入当时的温度

第二步: 判断输入温度的类型,如果是华氏度F的话,(可以大小写)执行计算:

摄氏度=(华氏度-32)/18

这里的 TempStr[-1] 是指最后一个字符串在F/f判断是华氏度。 TempStr[0:-1] 取的是数值,用

eval() 函数,使得这些数值可以被计算出来。从而使得该公式可以计算赋值给变量C。

print("转换后的温度是{:.2f}C".format(C)), {:.2f} ,这里.2是使结果保留2位小数,f在.format(C)中展示,带上单位C。就完成打印。

第三步: 华氏度转成摄氏度

这是华氏度转化摄氏度的,下面摄氏度转化华氏度是同样的方法。

以下是完整代码:

一个程序还是包含着挺多知识的, 保留2位小数,eval(),.format(),input(), 需要细看才好好理解。欢迎观看~

描述

温度的刻画有两个不同体系:摄氏度(Celsius)和华氏度(Fahrenheit)。

请编写程序将用户输入华氏度转换为摄氏度,或将输入的摄氏度转换为华氏度。

转换算法如下:(C表示摄氏度、F表示华氏度)

C = ( F - 32 ) / 1.8

F = C * 1.8 + 32

要求如下:

(1) 输入输出的摄氏度采用大写字母C开头,温度可以是整数或小数,如:C12.34指摄氏度12.34度;

(2) 输入输出的华氏度采用大写字母F开头,温度可以是整数或小数,如:F87.65指华氏度87.65度;

(3) 不考虑异常输入的问题,输出保留小数点后两位;

(4) 使用input()获得测试用例输入时,不要增加提示字符串。

程序:

TempStr = input()

if TempStr[0] in ['F']:    #因为要求输入输出是大写C或者F,所以针对第一位字符做判断

    C = (eval(TempStr[1:]) - 32)/1.8    #TempStr[1:]表示字符串除首字符外的所有字符。

    print("C{:.2f}".format(C))     #采用{:.2f}将输出数字变成两位小数点表示时,即使数学上该输出值是整数,也会按照小数方式输出,例如,转换后温度为10度,输出为10.00;

elif TempStr[0] in ['C']:    

    F = 1.8*eval(TempStr[1:]) + 32    

    print("F{:.2f}".format(F))

else:

    print()      #不输入任何错误提示