
Il metodo isdecimal() di Python
Il metodo isdecimal() di Python verifica se una stringa contiene solo cifre decimali.
stringa.isdecimal()
Il metodo non ha parametri ma le parentesi tonde vanno comunque aggiunte.
Si applica agli oggetti di tipo String.
Il metodo isdecimal() restituisce True se la stringa è composta solo da cifre decimali. In caso contrario, restituisce False.
Nota. Il metodo isdecimal() riconosce come caratteri validi solo i caratteri delle cifre decimali da "0" a "9". Non riconosce come caratteri validi i simboli matematici di punteggiatura come la virgola o il punto decimale, né i segni più o meno davanti ai numeri.
Ti faccio un esempio pratico.
Assegna una stringa alla variabile chiamata myVar.
>>> myVar = "12345"
Poi digita myVar.isedecimal() per verificare se la stringa è composta solo da cifre decimali.
>>> myVar.isdecimal()
Il metodo isdecimal() restituisce True perché la stringa è composta solo da numeri.
True
Ti faccio un altro esempio.
Assegna alla variabile una stringa alfanumerica composta da numeri e lettere.
>>> myVar = "12345abc"
Poi utilizza il metodo isdecimal() per verificare se è composta da cifre decimali.
>>> myVar.isdecimal()
In questo caso il metodo restituisce False perché la stringa è composta anche da lettere.
False
Il metodo isdecimal riconosce solo le cifre decimali, ossia i caratteri da "0" a "9".
Tuttavia, non è detto che sia in grado di riconoscere tutti i numeri, perché il metodo isdecimal() non riconosce il punto decimale "."
Non riconosce come caratteri validi nemmeno la virgola ",", il segno più "+" o meno "-".
Ad esempio, definisci questa variabile.
>>> stringa = "123.45"
La stringa contiene la rappresentazione alfanumerica di un numero decimale "123.45"
Ora verifica se la stringa contiene solo cifre decimali tramite il metodo isdecimal()
>>> stringa.isdecimal()
In questo caso il metodo restituisce False perché la stringa "123.45" contiene un punto decimale.
False
Allo stesso modo la risposta è False anche se la stringa è "+12345", "-12345" oppure "123,456".
Se c'è anche un solo carattere speciale o alfabetico nella stringa, il metodo isdecimal() restituisce False.