如何在Python中将一个字符串转换为浮点数

引言

在这篇文章中,我们将使用Python的float()函数将字符串转换为浮点数。另外,我们还将使用Python的str()函数将浮点数转换为字符串。

在进行计算和连接之前,对数据类型进行正确转换以防止运行时错误非常重要。

先决条件

为了完成这个教程,你需要:

  • Familiarity with installing Python 3. And familiarity with coding in Python. How to Code in Python 3 series or using VS Code for Python.

这个教程使用Python 3.9.6版本进行了测试。

使用float()函数

我们可以使用Python中的float()函数将字符串转换为浮点数。这是一个内置函数,用于将对象转换为浮点数。在内部,float()函数调用指定对象的__float__()函数。

例子

让我们来看一个将字符串转换为浮点数的Python示例:

input_1 = '10.5674'

input_1 = float(input_1)

print(type(input_1))
print('Float Value =', input_1)

结果:

<class 'float'>
Float Value = 10.5674

字符串值’10.5674’已被转换为浮点数值10.5674。

为什么我们需要将字符串转换为浮点数?

如果我们通过终端接收用户输入的浮点数值,或者从文件中读取浮点数值,那么它们是字符串对象。我们必须显式地将它们转换为浮点数,这样我们才能对它们进行必要的运算,如加法、乘法等。

input_1 = input('Please enter first floating point value:\n')
input_1 = float(input_1)

input_2 = input('Please enter second floating point value:\n')
input_2 = float(input_2)

print(f'Sum of {input_1} and {input_2} is {input_1+input_2}')

Note

注意:如果您不熟悉使用f前缀的字符串格式化,请阅读Python中的f-strings。

让我们运行这段代码,并为input_1和input_2提供浮点数值。

Please enter first floating point value:
10.234
Please enter second floating point value:
2.456
Sum of 10.234 and 2.456 is 12.69

10.234和2.456的和是12.69。

理想情况下,我们应该使用try-except块来捕捉用户输入无效的异常情况。

使用str()函数

我们也可以使用str()函数将浮点数转换为字符串。在需要连接浮点数值的情况下,可能需要这样做。

例如

让我们来看一个例子吧。

input_1 = 10.23
input_2 = 20.34
input_3 = 30.45

# using f-string from Python 3.6+, change to format() for older versions
print(f'Concatenation of {input_1} and {input_2} is {str(input_1) + str(input_2)}')
print(f'CSV from {input_1}, {input_2} and {input_3}:\n{str(input_1)},{str(input_2)},{str(input_3)}')
print(f'CSV from {input_1}, {input_2} and {input_3}:\n{", ".join([str(input_1),str(input_2),str(input_3)])}')

我们来运行这段代码。

Concatenation of 10.23 and 20.34 is 10.2320.34
CSV from 10.23, 20.34 and 30.45:
10.23,20.34,30.45
CSV from 10.23, 20.34 and 30.45:
10.23, 20.34, 30.45

连接10.23和20.34会生成字符串’10.2320.34’。此代码还会生成两个逗号分隔的值(CSV)的版本。

如果我们在上述程序中不将浮点数转换为字符串,join()函数会抛出一个异常。此外,我们也无法使用+运算符进行连接,因为它会将浮点数相加。

结论

你可以从我们在GitHub存储库中查看完整的Python脚本和更多的Python示例。

参考文献:

  • float() official documentation
发表回复 0

Your email address will not be published. Required fields are marked *


广告
将在 10 秒后关闭
bannerAds