【Python】:温度转换实例

华氏度与摄氏度转换

本文主要通过一段简单代码,介绍在python中实现温度转换的一个样例。

代码来自mooc国家精品课程《Python语言程序设计》,也是我重温python的指导课程。

我在每行代码后都做了备注,方便大家进行理解。

'''
规定输入格式为:数值+C/F  C代表输入为摄氏度,F代表输入为华氏度。
例如:20.5C   20.5c   60F  58.2f

摄氏度与华氏度的换算为:摄氏度*1.8+32=华氏度 
'''

TempStr = input("请输入带有符号的温度值:") #取输入
if TempStr[-1] in ['F', 'f']:
    #判断输入值的最后一个符号是否为华氏度符号大小写F
    #[]代表数据类型为列表类型,内元素用','隔开,表示多个元素。
    #用保留字in判断变量中的最后一个字符是否属于列表中的元素
    C = (eval(TempStr[0:-1]) - 32)/1.8
    #如果是的话,取输入除最后一位的所有字符执行计算
    #[0:-1]这是切片的一种用法,代表取字符串的第0个元素到最后一个元素,但不包含最后一个元素
    #eval()   评估函数,将最外侧的引号去掉。详细见文末。
    print("转换后的温度是{:.2f}C".format(C))
    #输出取Float型且保留两位小数.format()函数是一种格式化函数
    #可参考菜鸟教程关于format函数的教程
    #https://www.runoob.com/python/att-string-format.html
elif TempStr[-1] in ['C', 'c']:
    #判断输入值的最后一个符号是否为华氏度符号大小写C
    F = 1.8*eval(TempStr[0:-1]) + 32
    #如果是的话,取输入除最后一位的所有字符执行计算
    print("转换后的温度是{:.2f}F".format(F))
else:
    #当输入格式不符合以上两种情况时,判断格式错误
    print("输入格式错误")


补充:评估函数:eval()

在上述代码中,TempStr变量切片后的内容仍未一段字符串,字符串是用""圈起来的,所以使用eval函数,就会去掉该外侧引号,使其变为数字类型。这和进行字符串类型转换是相同的。
在这里插入图片描述


                           DDDXXY
  • 10
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值