Maison >développement back-end >Tutoriel Python >Comment vérifier si une chaîne représente un entier en Python sans utiliser Try/Except ?

Comment vérifier si une chaîne représente un entier en Python sans utiliser Try/Except ?

DDD
DDDoriginal
2024-12-11 02:52:10503parcourir

How to Check if a String Represents an Integer in Python Without Using Try/Except?

Vérifier la représentation sous forme de chaîne d'un entier sans Try/Except

Déterminer si une chaîne donnée représente un entier peut s'avérer délicat sans recourir à la gestion des exceptions . Voici comment relever ce défi :

Utiliser .isdigit() pour les entiers positifs

Pour les entiers positifs, la méthode .isdigit() offre une solution simple :

'16'.isdigit()  # True

Gestion des négatifs Entiers

Les entiers négatifs nécessitent un peu plus d'effort. Nous pouvons vérifier si la chaîne commence par un signe moins et vérifier que les caractères restants sont constitués de chiffres :

s = '-17'
s.startswith('-') and s[1:].isdigit()  # True

À l'exclusion des nombres à virgule flottante

Malheureusement, cela L’approche échoue lorsqu’il s’agit de nombres à virgule flottante. Pour une solution complète, nous pouvons considérer la fonction suivante :

def check_int(s):
    if s[0] in ('-', '+'):
        return s[1:].isdigit()
    return s.isdigit()

Cette fonction autorise les entiers positifs et négatifs tout en excluant les nombres à virgule flottante. Par exemple :

check_int('3.14')  # False
check_int('-7')    # True

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