python怎么判断字符是不是数字

如题所述

正则匹配法比较严谨一些,你说的数字有没有条件限制?
下面是一些常用的判断各种数字的正则表达式:

    验证数字:^[0-9]*$
    验证n位的数字:^\d{n}$
    验证至少n位数字:^\d{n,}$
    验证m-n位的数字:^\d{m,n}$
    验证零和非零开头的数字:^(0|[1-9][0-9]*)$
    验证有两位小数的正实数:^[0-9]+(.[0-9]{2})?$
    验证有1-3位小数的正实数:^[0-9]+(.[0-9]{1,3})?$
    验证非零的正整数:^\+?[1-9][0-9]*$
    验证非零的负整数:^\-[1-9][0-9]*$
    验证非负整数(正整数 + 0) ^\d+$
    验证非正整数(负整数 + 0) ^((-\d+)|(0+))$
确定后使用python的re模块来匹配正则
写个小例子:

import re

p1=re.compile('^[0-9]*$') 
number = p1.match(value) 
if number:
    print "yes"
else:
    print "no"


希望我的回答可以帮到你:-)

温馨提示:答案为网友推荐,仅供参考
相似回答