Gestion de l'exception ValueError dans Python

Gestion de l'exception ValueError dans Python
Lorsqu'une erreur se produit au moment de l'exécution d'un script, alors elle est appelée exception. Le bloc d'essai à l'exception est utilisé pour gérer les exceptions en python. De nombreuses exceptions intégrées existent dans Python pour gérer les erreurs courantes, telles que IndexError, Keyerror, NameError, TypeError, ValueError, etc. Le Value Enerror se produit en python lorsqu'un type d'argument correct est passé mais une valeur incorrecte est transmise à une fonction. Ce type d'erreur apparaît principalement pour les opérations mathématiques. Quand le Value Enerror se produit et la façon de gérer cette erreur dans Python a été montrée dans ce tutoriel.

Différentes utilisations de l'exception ValueError

Les utilisations de ValueError ont été montrées dans la partie suivante de ce tutoriel.

Exemple-1: augmenter la valeur de valeur pour des données incorrectes

Créez un fichier Python avec le script suivant qui soulèvera une valeur de valeur où la fonction int () a été utilisée pour convertir une valeur de chaîne.

# Définir la première variable
nombre1 = 100
# Définir la deuxième variable
Number2 = int ('Hello')
# Imprimez la somme de deux variables
imprimer (numéro1 + numéro2)

Sortir:

La sortie suivante apparaîtra après avoir exécuté le script ci-dessus. La sortie montre que la valeur de valeur s'est produite au numéro de ligne 4 où la fonction int () a été utilisée pour couvrir la chaîne, «bonjour».

Exemple-2: Gérez la valeur ÉERRE en utilisant un bloc d'essai à l'exception

Créez un fichier Python avec le script suivant qui prendra le âge valeur de l'utilisateur. Si une valeur non numérique sera tirée de l'utilisateur pour le âge valeur, puis le essayer le bloc jettera le Value Enerror Exception et imprimer le message d'erreur personnalisé. Si le valide âge la valeur sera tirée de l'utilisateur, puis le message sera imprimé en fonction de la âge valeur.

essayer:
#Take la valeur du nombre de l'utilisateur
Âge = int (entrée ("Entrez votre âge:"))
"
Vérifier que le nombre est supérieur ou égal à 25
et moins ou égal à 55
"
Si l'âge> = 35 et l'âge <= 55:
Imprimer ("Vous êtes éligible à cette tâche.")
autre:
Imprimer ("Vous n'êtes pas éligible à la tâche.")
sauf ValueError:
Message #print pour ValueError
Print ("Seuls les caractères alphabétiques sont acceptables.")

Sortir:

La sortie suivante apparaîtra après avoir exécuté le script ci-dessus pour les valeurs d'entrée, 56, 45, 23, et 'vingt'. Ici, le ValueError s'est produit pour la valeur d'entrée, 'vingt'Ce qui n'est pas valide.

Exemple-3: augmenter la valeur de valeur dans une fonction

Le Value Enerror peut être généré sans un essai à l'exception bloc en utilisant le augmenter mot-clé à l'intérieur de la fonction python. Créez un fichier Python avec le script suivant qui calculera la multiplication de deux nombres entiers. Si une valeur d'argument non valide sera transmise dans la fonction, alors le Value Enerror sera soulevé.

# Définir la fonction de multiplication
Def Multiplication (A, B):
# Vérifiez le type des arguments
Si le type (a) == str ou le type (b) == str:
# Augmenter la valeururror
augmenter ValueError ('la valeur des variables ou les deux n'est / n'est pas un nombre.')
autre:
# Multipliez les variables
résultat = a * b
# Imprimez le résultat de la multiplication
Impression ("Multiplication de% d et% d est% d"% (a, b, résultat))
# Appelez la fonction avec deux numéros
Multiplication (4, 3)
# Appelez la fonction avec un numéro et une chaîne
Multiplication (5, «6»)

Sortir:

La sortie suivante apparaîtra après avoir exécuté le script ci-dessus. Ici, lorsque la fonction a été appelée avec les valeurs 5 et «6», alors le Value Enerror a été soulevé pour la valeur non valide, «6».

Exemple-4: utilisation de la valeur d'énerre à l'intérieur et à l'extérieur de la fonction

Créer un fichier python avec le script suivant qui montre les utilisations de Value Enerror À l'intérieur et à l'extérieur de la fonction. Ici le vérifier() La fonction a été définie pour savoir si un nombre est positif ou négatif. La fonction augmentera le Value Enerror Lorsqu'une valeur d'argument non valide sera transmise à la fonction. Le bloc d'essai à l'exception attrapera le Value Enerror passé de la fonction et imprime le message d'erreur.

# Définir la fonction
Def Check (n):
essayer:
# Convertir la valeur en entier
val = int (n)
# Vérifier que le nombre est positif ou négatif
Si val> 0:
imprimer ("le nombre est positif")
autre:
imprimer ("le nombre est négatif")
sauf Value Enerror comme e:
# Imprimez le message d'erreur de la fonction
Imprimer ("Erreur à l'intérieur de la fonction:", e)
augmenter
essayer:
# Prenez les commentaires de l'utilisateur
num = input ("Entrez un nombre une valeur:")
# Appelez la fonction
Vérifier (num)
sauf Value Enerror comme e:
# Imprimez le message d'erreur
Imprimer ("Erreur en dehors de la fonction:", e)

Sortir:

La sortie suivante apparaîtra après avoir exécuté le script ci-dessus avec les valeurs d'entrée de 6, -3 et «D». Ici le Value Enerror s'est produit à l'intérieur et à l'extérieur de la fonction de la valeur d'entrée, «D».

Exemple-5: utilisation de la valeur ÉERRE avec une autre erreur

Créez un fichier Python avec le script suivant qui ouvrira un fichier pour la lecture et imprimera le contenu du fichier. Si le nom de fichier qui a été utilisé dans le script n'est pas accessible, le Ioerror sera généré, et si le fichier contient un caractère alphabétique, alors le Value Enerror sera généré.

essayer:
#Open du fichier pour la lecture
FH = Open ('Ventes.SMS')
#Define while boucle pour lire la ligne par ligne
tandis que FH:
#Convert la ligne en entier
valeur = int (fh.readLine ())
# Imprime la valeur
Imprimer (valeur)
Sauf (ValueError, ioerror):
"
Imprimez le message d'erreur si le fichier est
Impossible de lire ou le fichier contient
Toutes les données de chaîne
"
imprimer ("ValueError ou Ioerror s'est produit.")

Sortir:

La sortie suivante apparaîtra après avoir exécuté le script ci-dessus. Ici le Value Enerror a été généré parce que le ventes.SMS Le fichier contient des caractères alphabétiques à la ligne numéro 6.

Exemple-6: Utilisation de la valeur de valeur avec l'argument de la ligne de commande

Créez un fichier Python avec le script suivant qui prendra un numéro à partir de la valeur d'argument de la ligne de commande. Le message particulier sera imprimé si une valeur numérique est fournie dans l'argument de la ligne de commande, sinon, le Value Enerror sera généré et un message d'erreur sera imprimé.

Module #import sys
importer sys
essayer:
#Check le nombre d'arguments
Si Len (Sys.argv)> 1:
#Convers la valeur de l'argument en entier
num = int (sys.Argv [1])
#Check le nombre est supérieur ou égal à 100
Si num> = 100:
Imprimer ("Vous devez entrer un nombre moins de 100.")
autre:
imprimer ("le nombre entré est% d"% num)
autre:
imprimer ("aucune valeur d'argument n'est donnée.")
sauf ValueError:
Message #print pour ValueError
imprimer ("vous devez taper un nombre")
enfin:
# Print le message de résiliation
Print ("Le programme est terminé.")

Sortir:

La sortie suivante apparaîtra après avoir exécuté le script ci-dessus lorsque le script est exécuté sans aucun argument, avec les valeurs d'argument 600 et 60.

Conclusion

Le but de l'utilisation de l'exception ValueError a été montré dans ce tutoriel en utilisant plusieurs exemples pour aider les utilisateurs de Python à connaître correctement les utilisations de cette exception.