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!