स्ट्रिंग क्लास में isdigit() नामक एक मेथड होता है जो सच लौटाता है यदि स्ट्रिंग में सभी कैरेक्टर अंक हैं और कम से कम एक कैरेक्टर है, अन्यथा गलत। आप इसे निम्न प्रकार से कॉल कर सकते हैं:
>>> "12345".isdigit() True >>> "12345a".isdigit() False
लेकिन यह फ्लोटिंग-पॉइंट नंबर्स के लिए विफल होगा। हम उन नंबर्स के लिए निम्न मेथड का उपयोग कर सकते हैं:
def isfloat(value):
try:
float(value)
return True
except ValueError:
return False
isfloat('12.345')
isfloat('12a')
# यह आउटपुट देगा:
# True
# False
आप उसी परिणाम के लिए regexes का भी उपयोग कर सकते हैं। दशमलव मिलान के लिए, हम regex: "^\d+?\.\d+?$" का उपयोग करके re.match(regex, string) कॉल कर सकते हैं। उदाहरण के लिए,
>>> bool(re.match("^\d+?\.\d+?$", '123abc'))
False
>>> bool(re.match("^\d+?\.\d+?$", '12.345'))
True