python---请实现一个函数用来判断字符串是否表示数值(包括整数和小数)。例如,字符串"+100","5e2","-123","3.1416"和"-1E-16"都表示数值。 但是"12e","1a

今天又看到一个题,是关于字符串的题目,我为何解不出来呢:

请实现一个函数用来判断字符串是否表示数值(包括整数和小数)。例如,字符串"+100",“5e2”,"-123",“3.1416"和”-1E-16"都表示数值。
但是"12e",“1a3.14”,“1.2.3”,"±5"和"12e+4.3"都不是。

这个题我应该怎么做呢。如果是我来做,我只知道正整数和负整数可以用int转化为int类型的,可是科学计数法的怎么办呢,有没有什么方法可以将他们都转化为什么统一类型呢。。float函数就可以这么做。。。

class Solution:
	def isNumber(self,s):
		try:
			num = float(s)
			return True
		except:
			return False

float函数功能如此简单强大,为何int函数就那么复杂多坑呢。

你可能感兴趣的:(数据结构)