python实现温度的转化

#书上项目(温度的转化)
"""问题的描述:中国人喜欢用摄氏温度,美国人用的是华氏温度,但我是个喜欢浪的人,怎么样对他们的温度进行转化呢?
首先,摄氏温度冰点为0,沸点为100,以刻度一为他们的单位,华氏温度是以32作为冰点,沸点为212度,也是用一个刻度
为单位那么,转化是他们都是一个刻度为单位的共同点进行转化,C或c通过公式C=(f-32)/1.8,其中f-32是华氏温度的真是差值
,/1.8将其刻度化,下面是具体的代码实现呢
"""
#temper=int(input("请输入带有温度符号的温度:"))无法将字母转化成int类型的数据
#try:自己写的永远是编译不过去的
temstr=input('小可爱!输入带有温度符号的温度值吧:')
if temstr[-1] in ['f','F']:
    #print('转化的摄氏温度为:','C=   ',C=eval((temper[0:-1]-32)/1.8))
    C=(eval(temstr[0:-1])-32)/1.8
    print('客官,这是您要的摄氏温度:{:.2f}   C'.format(C))
elif temstr[-1] in ['C','c']:
    F=(eval(temstr[0:-1]))*1.8+32
    print('客官,您要的华氏温度为:{:.1f}  F').format(F)

else:
    print('您输入的格式有误!')

运行的结果:

分析:

temper[-1]:索引的方式 

 temstr[0:-1]:表示这个变量的第一个字符到最后一个字符(但不包括最后一个字符)的字串

eval()函数:

就是将字符串的类型强制转化成相应的整数类型或其他的浮点类型,方便数字之间的运算,但不同于int(input('请输入第一个整数:')),下面给出一些实例:

a='1234'
print(a,type(a))
b=eval(a)
print(b,type(b))

运行结果:

 可以看到,他将字符串类型的数据转化成整数类型,但不能转化字母的字符串类型的数据,需要用[0:指定的位置]来进行限制

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

焦某人要努力呀!

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值