在 Python 中实现 IsNumber()函数
原文:https://www . geesforgeks . org/implement-is number-function-in-python/
在本文中,我们将看到如何使用 Python 实现 isNumber() 方法。此方法接受一个字符串作为输入,并根据该字符串是否为数字返回真或假。 例:
Input : "12345"
Output : True
Input : "-12345"
Output : True
Input : "abc"
Output : False
方法: 这里我们将利用 Python 中可用的 int() 内置函数。同样通过这种方法,我们将看到 【异常处理】 是如何帮助我们的。使用 try-catch 构造,我们尝试将字符串转换为整数。如果字符串无法转换,处理程序将捕获引发的异常。 下面是实现:
Python 3
# Implementation of isNumber() function
def isNumber(s):
# handle for negative values
negative = False
if(s[0] =='-'):
negative = True
if negative == True:
s = s[1:]
# try to convert the string to int
try:
n = int(s)
return True
# catch exception if cannot be converted
except ValueError:
return False
s1 = "9748513"
s2 = "-9748513"
s3 = "GeeksforGeeks"
print("For input '{}' isNumber() returned : {}".format(s1, isNumber(s1)))
print("For input '{}' isNumber() returned : {}".format(s2, isNumber(s2)))
print("For input '{}' isNumber() returned : {}".format(s3, isNumber(s3)))
输出:
For input '9748513' isNumber() returned : True
For input '-9748513' isNumber() returned : True
For input 'GeeksforGeeks' isNumber() returned : False
注意:这不是实现 isNumber()函数的唯一方法,但可以说是最快的方法。Try/Catch 不会引入太多开销,因为最常见的异常是在没有大量搜索堆栈帧的情况下捕获的。
版权属于:月萌API www.moonapi.com,转载请注明出处