Méthode isdigit() de Python3
Chaînes de caractères en Python3
Description
La méthode isdigit() de Python vérifie si une chaîne est composée uniquement de chiffres.
Syntaxe
Syntaxe de la méthode isdigit() :
str.isdigit()
Parameters
- Aucun.
Valeur de retour
Renvoie True si la chaîne contient uniquement des chiffres, sinon renvoie False.
Exemple
L'exemple suivant démontre la méthode isdigit() :
Exemple
#!/usr/bin/python3
str = "123456";
print (str.isdigit())
str = "Example example....wow!!!"
print (str.isdigit())
str = "123456";
print (str.isdigit())
str = "Example example....wow!!!"
print (str.isdigit())
La sortie de l'exemple ci-dessus est la suivante :
True False
La méthode isdigit() n'est valide que pour les entiers positifs ; elle renvoie des résultats incorrects pour les nombres négatifs et les décimales.
Vous pouvez utiliser la fonction suivante pour résoudre ce problème :
Exemple
# Déterminer s'il s'agit d'un nombre
def is_number(s):
try: # Si l'instruction float(s) peut être exécutée, renvoyer True (la chaîne s est un float)
float(s)
return True
except ValueError: # ValueError est une exception Python standard, signifiant « argument invalide fourni »
pass # Si une exception ValueError est levée, ne rien faire (pass : ne rien faire, généralement utilisé comme instruction de remplissage)
try:
import unicodedata # Paquet pour gérer les codes ASCII
unicodedata.numeric(s) # Une fonction qui convertit une chaîne représentant un nombre en un float et le renvoie
return True
except (TypeError, ValueError):
pass
return False
print(is_number(1))
print(is_number(1.0))
print(is_number(0))
print(is_number(-2))
print(is_number(-2.0))
print(is_number("abc"))
Le résultat de sortie est:
True True True True True False
Autres extensions