如何检查字符串是否仅包含十进制字符?
isdigit()
String类中有一个方法,如果字符串中的所有字符都是数字并且至少有一个字符,则返回true,否则返回false。您可以这样称呼它:
>>> "12345".isdigit() True >>> "12345a".isdigit() False
但这对于浮点数将失败。我们可以对这些数字使用以下方法:
def isfloat(value): try: float(value) return True except ValueError: return False isfloat('12.345') isfloat('12a') This will give the output: True False
您也可以将正则表达式用于相同的结果。对于匹配的小数,我们可以使用正则表达式调用re.match(regex,string):“^\d+?\。\d+?$”。例如,
>>> bool(re.match("^\d+?\.\d+?$", '123abc')) False >>> bool(re.match("^\d+?\.\d+?$", '12.345')) True