如何在 Python 中检查字符串是否可以转换为浮点数?


在本文中,我们将重点介绍如何检查 Python 中的字符串是否可以转换为浮点数。

第一种方法是使用 float() 类型转换。我们将使用异常处理编写一个函数,并检查给定的字符串是否可以转换为字符串,如果可以转换则返回 True,否则返回 False。

对于给定的数字或文本,float() 方法将返回一个浮点数。如果未提供值或提供空白参数,它将返回 0.0 作为浮点值。

示例 1

在这个例子中,我们以字符串作为输入,并使用 float() 类型转换检查它是否可以转换为浮点数。

def isFloat(s):
   try:
      float(s)
      return True
   except:
      return False
      
str1 = "36.9"
print("The given string is")

print(str1)
print("Checking if the given string can be converted into float")

res = isFloat(str1)
print(res)

输出

上面示例的输出如下所示:

The given string is
36.9
Checking if the given string can be converted into float
True

示例 2

在下面给出的示例中,我们使用与上面相同的程序,但使用不同的输入,并检查它是否可以转换为浮点数。

def isFloat(s):
   try:
      float(s)
      return True
   except:
      return False
      
str1 = "Welcome"
print("The given string is")

print(str1)
print("Checking if the given string can be converted into float")

res = isFloat(str1)
print(res)

输出

上面示例的输出如下所示:

The given string is
Welcome
Checking if the given string can be converted into float
False

使用 isdigit() 和 replace() 方法

第二种方法是使用 isdigit() replace() 。我们将替换浮点数中存在的“.”为空格,并使用 isdigit() 检查结果字符串。如果所有字符都是数字,则返回 True,否则返回 False。

示例 1

在这个例子中,我们以字符串作为输入,并使用 isdigit() 和 replace() 方法检查它是否可以转换为浮点数。

str1 = "69.3"
print("The give string is")

print(str1)
print("Checking if the given string can be converted into float")

res = str1.replace('.', '', 1).isdigit()
print(res)

输出

上面示例的输出如下所示:

The give string is
69.3
Checking if the given string can be converted into float
True

示例 2

在下面给出的示例中,我们使用与上面相同的程序,但使用不同的输入,并检查它是否可以转换为浮点数。

str1 = "Welcome"
print("The give string is")

print(str1)
print("Checking if the given string can be converted into float")

res = str1.replace('.', '', 1).isdigit()
print(res)

输出

上面示例的输出如下所示:

The give string is
Welcome
Checking if the given string can be converted into float
False

更新时间: 2022-12-07

2K+ 浏览量

开启您的 职业生涯

通过完成课程获得认证

开始学习
广告