Python 将字符串转换为浮点数

Python 将字符串转换为浮点数

我们对Python中的可用数据类型以及我们可以对它们执行的不同操作非常熟悉。

我们知道,字符串是使用反引号”表示的字符序列。它们是不可变的,这意味着一旦声明就无法更改。

而浮点数值只是十进制值。

我们可以使用下面的程序检查类型-

x = 2.71
# printing the type of x
print(type(x))
y = 'Moscow'
#printing the type of y
print(type(y))

输出:

<class 'float'>
<class 'str'>

在本教程中,我们将讨论在Python中将字符串转换为浮点数的不同场景。

  1. 使用float函数
  2. 将带有逗号的字符串转换为浮点数
  3. 转换为浮点数列表
  4. 将字符串列表转换为浮点数
  5. 使用NumPy进行转换
  6. 在指定的小数点位置进行转换

使用Float函数

让我们看一下第一个案例,我们将使用float函数,

下面的程序演示了相同的内容-

x = '2.71'
res = float(x)
print("The float value is ",res)

输出:

The float value is 2.71

解释:

让我们了解一下我们在上面的程序中所做的事情-

  1. 步骤1是声明我们想要转换的字符串值。
  2. 在此之后,我们将使用一个float()函数,其中我们将传递包含字符串值的变量。
  3. 执行该程序后,我们可以观察到它显示了所需的值。

将带有逗号的字符串转换成数字

允许我们查看第二种情况,我们将转换带有逗号的字符串,

下面的程序说明了同样的情况-

x = '27,.71'
res = float(x.replace(',', ''))
print("The float value is ",res)

输出:

The float value is 2.71

解释:

让我们了解一下以上程序中我们做了什么-

  1. 首先,声明我们想要转换的字符串值,这次十进制点前面有一个逗号。
  2. 然后,在float()内使用replace(),指定我们想要替换的值和替换后的值。
  3. 执行程序后,我们可以观察到它显示了所需的值。

转换为浮点列表

让我们看一下第三种情况,我们将把字符串转换为浮点列表,

以下程序展示了同样的情况-

x='1.21, 2.34, 3.42, 9.22, 5.43'
res=[float(i) for i in x.split(', ')]
print("The list having float values: "+str(res))

输出:

The list having float values: [ 1.21, 2.34, 3.42, 9.22, 5.43]

说明:

让我们了解一下上面程序中的操作-

  1. 步骤1是声明我们想要转换的字符串值,这次有一系列不同的十进制值,用逗号分隔。
  2. 然后,我们将使用列表推导式将每个值转换为所需的类型。
  3. 在执行程序后,我们可以观察到它显示了所需的值。

将字符串列表转换为浮点数

让我们看一下第四个案例,我们将把字符串列表转换为浮点数,

以下程序说明了相同的操作-

x=['1.21', '2.34', '3.42', '9.22', '5.43']
res=[]
for i in x:
  res.append(float(i))
print('The list having float values:',res)

输出:

The list having float values: [ 1.21,2.34,3.42,9.22,5.43] 

让我们理解一下我们在上面的程序中所做的事情-

  1. 步骤1是声明一个包含所有字符串值的列表,其元素为字符串
  2. 在此之后,我们声明了一个空列表,并使用for循环,将每个元素转换为浮点值,并将其附加到res中
  3. 在执行程序时,我们可以观察到它显示了所需的值

使用NumPy进行转换

让我们看一下第五种情况,我们将使用NumPy转换字符串

以下程序说明了相同的操作-

import numpy as np
x=np.array(['1.21', '2.34', '3.42', '9.22', '5.43'])
res=x.astype(float)
print('The list having float values:',res)

输出: ****

The list having float values: [1.21 2.34 3.42 9.22 5.43 ]

说明:

让我们了解一下上面程序中的操作-

  1. 步骤1是导入numpy库并命名为np。
  2. 这之后,我们声明了一个包含所有字符串值的数组。
  3. 完成上述步骤后,下一步是使用astype()函数,并指定其中的float,因为这是我们希望对所有元素应用的功能/特性。
  4. 执行程序后,我们可以观察到它显示了所需的值。

转换为指定的小数位数

最后,在最后一个程序中,我们将看到如何将字符串转换为指定的小数位数,

以下程序演示了同样的功能-

x='2.88731'
val=float(x)
res="{:.2f}".format(val)
print(res)

输出:

2.89

解释:

让我们了解一下上面的程序中做了什么-

  1. 步骤1是声明我们想要转换的字符串值。
  2. 接下来,我们将使用float()并传递变量x。
  3. 由于我们希望输出保留两位小数,我们将在下一个语句中说明这一点。
  4. 在执行程序时,我们可以观察到它显示了所需的值。

结论

所以,在本教程中,我们了解了不同的场景并学习了将字符串转换为浮点数的方法。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程