zoukankan      html  css  js  c++  java
  • [MoocPython课程]实例-1.温度转换

    问题描述:

    需要在得到一个摄氏度时转换为华氏度,在得到一个华氏度时转换为摄氏度

    解题前提:

    会进行华氏度与摄氏度之间的转换

    F = C * 1.8 +32

    C = (F-32)/1.8

    代码设计:

    str = input('请输入带有符号的温度:')
    if str[-1] in ['C','c']:
        f = eval(str[0:-1])*1.8 +32
        print('你输入的温度为{:.2f}F'.format(f))
    elif str[-1] in ['F','f']:
        c = (eval(str[0:-1])-32)/1.8
        print('你输入的温度为{:.2f}C'.format(c))
    else:
        print('你的输入有误!')

    代码分析:

    1.设置变量str接收输入,这里用到了input函数 / input变量接收的为字符串型变量

    2.因此str为字符串型变量,可以通过字符串的最后一个字母来判断输入是华氏度还是摄氏度。获取方法str[-1] ,-1即字符串的最后一个字符。

    3.若为C则输入为摄氏度,需要转换为华氏度进行输出。这里用到了eval()函数,把字符串型变量转换为数值型变量。运算以变量f接收。

    4.输出已转换的华氏度f,这里用到了.format()函数。用法为在字符串中用{}占位,.format()填充;:.2f意为保留两位小数。

    5.用elif分支判断,最后一个字符若为F则判定输入为华氏度,需要转换为摄氏度。

    6.同3行。

    7.同4行。

    8.else分支,其他情况,即输入的最后一个字符即不是摄氏度也不是华氏度。

    9.判定输出有无,print输出错误提示。

    举一反三:

    如果能熟练使用这种转换方式,不仅可以实现温度转换,货币汇率转换,计量单位转换等都可以轻松实现。

  • 相关阅读:
    基于element-ui图片封装组件
    计算时间间隔具体每一天
    C语言学习笔记 —— 函数作为参数
    AtCoder Beginner Contest 049 题解
    AtCoder Beginner Contest 048 题解
    AtCoder Beginner Contest 047 题解
    AtCoder Beginner Contest 046 题解
    AtCoder Beginner Contest 045 题解
    AtCoder Beginner Contest 044 题解
    AtCoder Beginner Contest 043 题解
  • 原文地址:https://www.cnblogs.com/hzshisan/p/12571087.html
Copyright © 2011-2022 走看看