En programmation, maxint/INT_MAX désigne la valeur la plus élevée pouvant être représentée par un entier. Dans certains cas, lors de la programmation, nous devrons peut-être attribuer une valeur supérieure à toute autre valeur entière. Normalement, on attribue ces valeurs manuellement. Par exemple, considérons une liste d'entiers dont la valeur minimale doit être trouvée à l'aide d'un pour la boucle .
Python
# initializing the list> li>=> [>1>,>->22>,>43>,>89>,>2>,>6>,>3>,>16>]> > # assigning a larger value manually> curr_min>=> 999999> > # loop to find minimum value> for> i>in> range>(>0>,>len>(li)):> > ># update curr_min if a value lesser than it is found> >if> li[i] curr_min = li[i] print('The minimum value is ' + str(curr_min))> |
>
>Sortir
The minimum value is -22>
Dans l'approche ci-dessus, nous supposons que 999999 est la valeur maximale possible dans notre liste et comparez-la avec d'autres éléments pour mettre à jour lorsqu'une valeur inférieure à elle est trouvée.
module système en Python
Ce module permet d'interagir avec l'interpréteur et d'accéder aux variables maintenues par l'interpréteur. Il peut être utilisé pour effectuer des manipulations dans l'environnement d'exécution. Celui-ci doit être importé comme les autres packages pour utiliser les fonctionnalités qu'il contient. Python module système fournit une variété de fonctions et de constantes parmi lesquelles la constante maximum , qui peut être utilisé pour définir une valeur entière positive qui est garantie comme étant supérieure à tout autre entier. Regardez l'exemple ci-dessous.
Python
exemple d'arbre de recherche binaire
# import the module> import> sys> > # initializing the list> li>=> [>1>,>->22>,>43>,>89>,>2>,>6>,>3>,>16>]> > # assigning a larger value with> # maxint constant> curr_min>=> sys.maxint> > # loop to find minimum value> for> i>in> range>(>0>,>len>(li)):> > ># update curr_min if a value lesser> ># than it is found> >if> li[i] curr_min = li[i] print('The minimum value is ' + str(curr_min))> |
>
>Sortir
The minimum value is -22>
Dans le programme ci-dessus, au lieu d'attribuer manuellement une valeur plus grande, sys.maxint est utilisé. Cette constante est prise en charge dans Python version 2.x. La valeur indiquée par la constante peut être calculée comme suit :
maximum = 231– 1 (dans un environnement 32 bits)
maximum = 263– 1 (dans un environnement 64 bits)
point np
Dans Python2 , ajouter 1 au maxint donne le plus haut possible long int et en Python2.7 , soustraire 1 de maxint donne le la plus petite valeur possible pour un entier .
Python
# import the module> import> sys> > max_int>=> sys.maxint> min_int>=> sys.maxint>->1> long_int>=> sys.maxint>+>1> > print>(>'maxint :'>+>str>(max_int)>+>' - '>+>str>(>type>(max_int)))> print>(>'maxint - 1 :'>+>str>(max_int)>+>' - '>+>str>(>type>(min_int)))> print>(>'maxint + 1 :'>+>str>(max_int)>+>' - '>+>str>(>type>(long_int)))> |
mylivecricket pour le cricket en direct
>
>Sortir
maxint :9223372036854775807 - maxint - 1 :9223372036854775807 - maxint + 1 :9223372036854775807 ->
Cette constante a été supprimée de Python3 , car les entiers dans cette version sont considérés comme étant de longueur arbitraire. Si vous utilisez cette constante dans Python 3, vous obtiendrez l'erreur suivante. Prenons le même exemple où l'élément de valeur minimale doit être trouvé à partir d'une liste.
Python3
import> sys> > # initializing the list> li>=> [>1>,>->22>,>43>,>89>,>2>,>6>,>3>,>16>]> > # assigning a larger value with maxint constant> curr_min>=> sys.maxint> > # loop to find minimum value> for> i>in> range>(>0>,>len>(li)):> > ># update curr_min if a value lesser than it is found> >if> li[i] curr_min = li[i] print('The minimum value is ' + str(curr_min))> |
>
>
Sortir :
AttributeError: module 'sys' has no attribute 'maxint'>
Cette constante a été supprimée car il n'y avait plus de limite pour la valeur des nombres entiers. Dans Python3, une constante similaire à celle-ci a été introduite, qui est sys.maxsize . Cela renvoie la valeur entière la plus élevée possible du type de variable Py_ssize_t et également, il indique la taille du pointeur de la plate-forme. Cette taille maximale est considérée comme limitant la taille de diverses structures de données telles que les chaînes et les listes. Une autre chose à noter est que, dans Python 3, le int et long int sont fusionnés en un seul. Regardez l'exemple ci-dessous pour une meilleure compréhension.
Python3
1 milliard en millions
# import the module> import> sys> > # using sys.maxsize> max_int>=> sys.maxsize> min_int>=> sys.maxsize>->1> long_int>=> sys.maxsize>+>1> > print>(>'maxint :'>+>str>(max_int)>+>' - '>+>str>(>type>(max_int)))> print>(>'maxint - 1 :'>+>str>(max_int)>+>' - '>+>str>(>type>(min_int)))> > # the data type is represented as int> print>(>'maxint + 1 :'>+>str>(max_int)>+>' - '>+>str>(>type>(long_int)))> |
>
>Sortir
maxint :9223372036854775807 - maxint - 1 :9223372036854775807 - maxint + 1 :9223372036854775807 ->