Vérifier si une chaîne de caractères est entière en Python

Muhammad Waiz Khan 30 janvier 2023
  1. Vérifier si une chaîne est entière en Python en utilisant la méthode str.isdigit()
  2. Vérifiez si une chaîne est un entier en Python à l’aide de la gestion des exceptions try ... except
  3. Vérifier si une chaîne est un entier en Python en utilisant l’expression régulière
Vérifier si une chaîne de caractères est entière en Python

Ce tutoriel explique comment vérifier si une chaîne est un entier ou non en Python. Par chaîne de caractères étant un nombre entier, nous entendons que la valeur stockée dans la chaîne représente un nombre entier. Il peut y avoir plusieurs méthodes pour vérifier cela, et nous allons discuter de ces méthodes avec des exemples de code dans ce tutoriel.

Vérifier si une chaîne est entière en Python en utilisant la méthode str.isdigit()

La façon la plus efficace de vérifier si une chaîne est un entier en Python est d’utiliser la méthode str.isdigit(), car c’est celle qui prend le moins de temps à s’exécuter.

La méthode str.isdigit() renvoie True si la chaîne représente un entier, sinon False. L’exemple de code ci-dessous montre comment nous pouvons l’utiliser.

def if_integer(string):

    if string[0] == ("-", "+"):
        return string[1:].isdigit()

    else:
        return string.isdigit()


string1 = "132"
string2 = "-132"
string3 = "abc"

print(if_integer(string1))
print(if_integer(string2))
print(if_integer(string3))

Production :

True
True
False

L’exemple ci-dessus prend également en compte si le signe de l’entier, + ou -, existe aussi dans la chaîne. Si la première chaîne est + ou -, il vérifie si le reste de la chaîne est un entier ou non.

Vérifiez si une chaîne est un entier en Python à l’aide de la gestion des exceptions try ... except

Une autre méthode consiste à utiliser la fonction try ... except exception handling on the int() function. Si la chaîne est un entier, elle retournera True et sinon False. L’exemple de code ci-dessous montre comment nous pouvons implémenter cette méthode.

def if_integer(string):
    try:
        int(string)
        return True
    except ValueError:
        return False


string1 = "132"
string2 = "-132"
string3 = "abc"

print(if_integer(string1))
print(if_integer(string2))
print(if_integer(string3))

Production :

True
True
False

Vérifier si une chaîne est un entier en Python en utilisant l’expression régulière

Une approche différente et intéressante que nous pouvons utiliser est l’expression régulière. L’expression régulière pour représenter un entier sera [+-]?\d+$, où [+-]? signifie que les signes +- sont optionnels, \d+ signifie qu’il doit y avoir un ou plusieurs chiffres dans la chaîne et $ est la fin de la chaîne.

Exemple de code :

import re


def if_integer(string):

    reg_exp = "[-+]?\d+$"
    return re.match(reg_exp, string) is not None


string1 = "132"
string2 = "-132"
string3 = "abc"

print(if_integer(string1))
print(if_integer(string2))
print(if_integer(string3))

Production :

True
True
False

Article connexe - Python String

Article connexe - Python Integer