"Si autre que..."
Résolu/Fermé
Lozz17
Messages postés
3
Date d'inscription
mercredi 26 septembre 2018
Statut
Membre
Dernière intervention
2 octobre 2018
-
Modifié le 2 oct. 2018 à 21:38
Lozz17 - 3 oct. 2018 à 10:04
Lozz17 - 3 oct. 2018 à 10:04
2 réponses
Bonjour.
Les chaines de caractères étant itérables et python pouvant comparer des chaines de caractères, alors une simple comparaison convient à faire cela.
Mais comme tu dois t'en douter, tu n'es pas le 1er à vouloir faire ça, python fournit une méthode permettant de tester si une chaîne de caractères est composée que de chiffres, str.isdigit()
Une autre approche est d'utiliser une exception, c'est très simple, lorsque l'on tente de convertir une chaîne non tranformable en entier avec int(), python renvoie une erreur de type ValueError, il suffit alors de la choper pour afficher ce qui ne va pas.
Voilà 3 façons de faire, la seconde te paraitra sans doute la plus simple.
Les chaines de caractères étant itérables et python pouvant comparer des chaines de caractères, alors une simple comparaison convient à faire cela.
while True: nombre = input("Saisissez un nombre : ") for i in nombre: if not '0' <= i <= '9': print("Ceci n'est pas un nombre.") break else: nombre = int(nombre) break
Mais comme tu dois t'en douter, tu n'es pas le 1er à vouloir faire ça, python fournit une méthode permettant de tester si une chaîne de caractères est composée que de chiffres, str.isdigit()
while True: nombre = input("Saisissez un nombre : ") if not nombre.isdigit(): print("Ceci n'est pas un nombre.") else: nombre = int(nombre) break
Une autre approche est d'utiliser une exception, c'est très simple, lorsque l'on tente de convertir une chaîne non tranformable en entier avec int(), python renvoie une erreur de type ValueError, il suffit alors de la choper pour afficher ce qui ne va pas.
while True: nombre = input("Saisissez un nombre : ") try: nombre = int(nombre) except ValueError: print("Ceci n'est pas un nombre.") else: # Tout s'est bien déroulé break
Voilà 3 façons de faire, la seconde te paraitra sans doute la plus simple.