Bigint en Python
Python a un avantage significatif lorsqu’il travaille avec des entiers car il n’a pas de problème de débordement d’entier, ce qui permet à l’utilisateur de créer des variables sans penser à leur taille. Cependant, cela dépend de la quantité de mémoire libre disponible dans le système.
Python prend également en charge un type entier bignum
, qui stocke arbitrairement de très grands nombres. En Python 2.5+, ce type d’entier est appelé long
, qui remplit la même fonction que bignum
, et en Python 3 et au-dessus, il n’y a qu’un seul int
qui représente tous les types d’entiers quelle que soit leur taille.
Exemple pour montrer le type d’entier dans Python 2.7 :
x = 10
print(type(x))
y = 111111111111111111111111111111111111111111111111111111111111111111
print(type(y))
Production:
<class 'int'>
<class 'long'>
Exemple pour montrer le type d’entier dans Python 3 :
x = 10
print(type(x))
y = 1111111111111111111111111111111111111111111111111111111111111111111
print(type(y))
Production:
<class 'int'>
<class 'int'>
La sortie montre clairement que, dans les versions ultérieures de Python, l’interpréteur stocke lui-même les grands nombres entiers.