import re
# 方法1
_float_regexp = re.compile(r"^[-+]?(?:\b[0-9]+(?:\.[0-9]*)?|\.[0-9]+\b)(?:[eE][-+]?[0-9]+\b)?$").match
def is_float_re(string):
return True if _float_regexp(string) else False
# 方法二
def is_float_type(string):
try:
if isinstance(eval(string), (float, int)):
return True
return False
except:
return False
while True:
string = input("请输入一个数字:")
print(is_float_re(string))
print(is_float_type(string))