如何将字符串转换为浮点数? (温度转换器)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何将字符串转换为浮点数? (温度转换器)相关的知识,希望对你有一定的参考价值。

我有一个练习,要求我建一个温度转换器。我需要询问用户他需要转换的温度,然后通过最后一个字母c或f来转换温度。

我们还没有学习如何使用def:,我被要求只使用if和elif语句。这是我尝试的事情之一,但似乎没有什么对我有用:

temp = (input('enter a temperature you would like to convert: ')

if temp[-1] == 'c':
    print(float(temp -32)/ 1.8) + 'f'
elif temp[-1] == 'f':
    print(float(temp * 1.8) + 32) + 'c'
答案

它应该是这样的:

temp = input('enter a temperature you would like to convert: ')

if temp[-1] == 'c':
    print(str((float(temp[:-1]) * (9/5)) + 32) + 'f')
elif temp[-1] == 'f':
    print(str((float(temp[:-1]) + 32) * (5/9) ) + 'c')

您使用的转换公式不正确。这是正确的:

输入11

  • F到C:(11°F − 32) × 5/9 = -11.67°C
  • C到F:(11°C × 9/5) + 32 = 51.8°F
另一答案

输入语句前面有一个不匹配的开括号。您的print声明中也存在一些问题。您没有从转换到float中删除c / f,并且您需要将总和转换回str以再次添加c / f。

temp = input('enter a temperature you would like to convert: ')

if temp[-1] == 'c':
    print(str((float(temp[:-1]) -32)/ 1.8) + 'f')
elif temp[-1] == 'f':
    print(str(float(temp[:-1]) * 1.8 + 32) + 'c')

实际的转换也不对......

以上是关于如何将字符串转换为浮点数? (温度转换器)的主要内容,如果未能解决你的问题,请参考以下文章

如何将表示为字符串的数字转换为浮点数

如何将带指数的字符串转换为浮点数?

如何将字符串转换为浮点数?

将字符串转换为浮点数时缺少小数点[重复]

如何将时间字符串(M:SS)转换为浮点数

ValueError:无法将字符串转换为浮点数:'GIAC'