Python入门——实例1_温度转换

温度转换

  温度刻画的两种不同的体系

  摄氏度:中国等世界大多数国家使用

    以1标准大气压下的水的结冰点为0度,沸点为100度,将温度进行等分刻画

  华氏度:美国,英国等国家使用

    以1标准大气压下的水的结冰点为32度,沸点为212度,将温度进行等分刻画

需求分析

  两种温度体系的转换:

    摄氏度转换为华氏度

    华氏度转换为摄氏度

问题分析

  该问题中的计算部分的确定和理解

  理解1  直接将温度值进行转换(入门)

  理解2  将温度信息发布的声音或图像形式进行理解和转换(需要程序处理声音或图像等)  

  理解3  监控温度信息的发布渠道,实时获取并转换温度值(需要处理网络通信,爬虫等)

  

  分析问题

  采用理解1  直接将温度值进行转换

    温度数值需要标明温度体系,即摄氏度或华氏度

    转换后也需要给出温度体系

  划分边界

  输入:带华氏或摄氏度标志的温度值

  处理:根据温度值的标志选择适当的温度转换算法

  输出:带华氏或摄氏度标志的温度值

  设计算法

  根据华氏和摄氏度定义,利用转换公式如下:

    C = (F-32)/1.8

    F = C * 1.8 + 32

  其中,C表示摄氏温度, F表示华氏温度 

  

def TempConvert(TempStr):
    if TempStr[-1] in ['F', 'f']:
        C = (eval(TempStr[:-1]) -32)/1.8
        print("转换后的温度是{:.2f}C".format(C))
    elif TempStr[-1] in ['C', 'c']:
        F = 1.8 * eval(TempStr[:-1]) + 32
        print("转换后的温度是{:.2f}F".format(F))
    else:
        print("输入格式错误")

if __name__ == "__main__":
    TempStr = input("请输入带有符号的温度值:")
    TempConvert(TempStr)

举一反三

   输入输出的改变

    温度数值与温度标识之间的关系设计可以发生改变

      标识改在温度值之前:C28,F28

      标识字符改变为多个字符:82Ce,28F  

  计算问题的扩展

    温度转换问题是各类转换问题的代表性问题

      货币转换,长度转换,重量转换,面积转换等

      问题不同,但程序的代码是相似的

  

黑夜给了我一双漆黑的眼睛,而我却用它来寻找光明
原文地址:https://www.cnblogs.com/tangxinghe/p/11160532.html