स्ट्रिंग क्लास में isdigit() नामक एक विधि है जो स्ट्रिंग में सभी वर्ण अंक होने पर सत्य लौटाती है और कम से कम एक वर्ण होता है, अन्यथा झूठा। आप इसे इस प्रकार कॉल कर सकते हैं:
>>> "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