Maison >développement back-end >Tutoriel Python >Comment puis-je vérifier de manière fiable si une chaîne représente un nombre en Python ?

Comment puis-je vérifier de manière fiable si une chaîne représente un nombre en Python ?

DDD
DDDoriginal
2024-12-20 04:09:09791parcourir

How Can I Reliably Verify if a String Represents a Number in Python?

Vérification de la saisie numérique dans les chaînes

Déterminer si une chaîne représente une valeur numérique (par exemple, 1, 0, -5) est une opération courante défi de codage.

Approche naïve (Type Vérification)

Intuitivement, on peut essayer d'utiliser l'opérateur de vérification de type (par exemple, type(user_input) == int) pour vérifier la numéricité. Cependant, cette approche est insuffisante car la fonction d'entrée renvoie toujours une chaîne.

Approche fiable (gestion des exceptions)

Une méthode plus robuste implique l'utilisation de la gestion des exceptions pour tester conversions numériques. Voici un exemple Python :

try:
    number = int(user_input)
except ValueError:
    print("That's not a valid number!")

Ce bloc de code tente de convertir l'entrée utilisateur (stockée dans user_input) en un entier (int). Si la conversion réussit, le numéro variable contiendra la valeur numérique. Cependant, si l'entrée n'est pas numérique (par exemple, "abc"), une exception ValueError est générée et le message d'erreur est imprimé.

Le bloc try-sauf filtre efficacement les entrées non numériques et permet au programme pour procéder avec des données numériques valides.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn