import re
value = re.compile(r'^(-?[0-9]\d*)(\.\d+|\d*)$') # 匹配规则(int or float)
print(value.match(str('11'))) # 匹配成功返回 <re.Match object; span=(0, 2), match='11'> 失败返回None
# 注意:
# 因match()需要str类型参数,所以需要str强转,11.数字类型与'11.'字符串类型会有所区别
# '11.'字符串类型str转换后为11.所以会匹配失败
# 11.数字类型str转换后为11.0匹配成功