Vérifier si l'entrée est un entier en Python
-
Utilisez la fonction
int()
pour vérifier si l’entrée est un entier en Python -
Utilisez la méthode
isnumeric()
pour vérifier si l’entrée est un entier ou non - Utilisez les expressions régulières pour vérifier si l’entrée est un entier en Python
Dans le monde de la programmation, nous travaillons très fréquemment avec l’apport de l’utilisateur. Python a la fonction input()
disponible, qui permet à l’utilisateur de saisir l’entrée souhaitée. Parfois, nous pouvons vouloir l’entrée d’un type spécifique.
Cependant, cette fonction convertit l’entrée de l’utilisateur en chaîne avant de la compiler avec le programme. Par conséquent, il n’est pas simple d’utiliser les méthodes traditionnelles pour vérifier des types spécifiques avec l’entrée de l’utilisateur, et nous devons vérifier si la chaîne contient des nombres ou non essentiellement.
Dans ce tutoriel, nous verrons comment vérifier si l’entrée saisie par l’utilisateur est de type entier ou non.
Utilisez la fonction int()
pour vérifier si l’entrée est un entier en Python
La fonction int()
peut convertir une valeur entière de chaîne donnée en un type entier. Cela génère une erreur si la valeur souhaitée n’est pas un entier et ne peut pas être convertie. Nous pouvons utiliser cette méthode pour vérifier si la chaîne de l’utilisateur est un entier ou non, comme indiqué ci-dessous.
user_input = input("Enter the input ")
try:
int(user_input)
it_is = True
except ValueError:
it_is = False
print(it_is)
Production:
Enter the input 15
True
Notez l’utilisation du bloc try...except
dans cette méthode. Il est utilisé très fréquemment lors de la gestion des exceptions en Python.
Utilisez la méthode isnumeric()
pour vérifier si l’entrée est un entier ou non
La méthode isnumeric()
de la chaîne renvoie True
si la chaîne ne contient que des nombres. Cependant, il convient de noter qu’il échoue avec des valeurs négatives. En effet, il renvoie automatiquement False
lorsqu’il rencontre le signe -
en nombres entiers négatifs.
Le code suivant montre comment nous pouvons utiliser cette fonction pour vérifier si une chaîne contient des entiers en Python.
user_input = input("Enter the input ")
print(user_input.isnumeric())
Production:
Enter the input 10
True
On peut aussi utiliser la fonction isdigit()
à la place de isnumeric()
; elle présente également les mêmes limites que cette méthode.
Utilisez les expressions régulières pour vérifier si l’entrée est un entier en Python
Nous pouvons également utiliser les expressions régulières pour créer un modèle qui renvoie True
chaque fois qu’il rencontre des entiers dans une chaîne. Nous pouvons également modifier le modèle pour nous assurer qu’il fonctionne pour les valeurs négatives. Par exemple,
import re
user_input = input("Enter the input ")
num_format = re.compile(r"^\-?[1-9][0-9]*$")
it_is = re.match(num_format, user_input)
if it_is:
print("True")
else:
print("False")
Production:
Enter the input -15
True
Vous trouverez ci-dessous l’explication du modèle d’expression régulière - ^\-?[1-9][0-9]*$
.
^
est le début de la chaîne\-?
indique que ce nombre peut être négatif ou positif.[1-9]
est le premier chiffre du numéro. Il doit s’agir d’un nombre compris entre 1 et 9, mais pas 0.[0-9]*
indique les chiffres suivants. Le nombre de chiffres peut être quelconque, y compris 0.$
est la fin de la chaîne.
Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.
LinkedInArticle connexe - Python String
- Supprimer les virgules de la chaîne en Python
- Comment vérifier qu'une chaîne est vide de manière pythonique
- Convertir une chaîne en nom de variable en Python
- Comment supprimer les espaces dans une chaîne de caractères en Python
- Comment extraire des nombres d'une chaîne de caractèresen Python
- Comment convertir une chaîne de caractères en datetime en Python