logo

sys.maxint у Python

У програмуванні, maxint/INT_MAX позначає найбільше значення, яке може бути представлене цілим числом. У деяких випадках під час програмування нам може знадобитися призначити значення, яке є більшим за будь-яке інше ціле значення. Зазвичай такі значення призначаються вручну. Наприклад, розглянемо список цілих чисел, мінімальне значення якого потрібно знайти за допомогою a для циклу .

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))>



>

>

Вихід

The minimum value is -22>

У підході вище ми припускаємо, що 999999 є максимально можливим значенням у нашому списку та порівняйте його з іншими елементами, щоб оновити, коли буде знайдено значення, менше за нього.

модуль sys на Python

Цей модуль використовується для взаємодії з інтерпретатором і для доступу до змінних, які підтримує інтерпретатор. Його можна використовувати для виконання маніпуляцій у середовищі виконання. Його потрібно імпортувати, як і інші пакунки, щоб використовувати його функції. Python sys модуль надає різноманітні функції та константи, серед яких константа maxint , який можна використовувати для встановлення позитивного цілого значення, яке гарантовано буде більшим за будь-яке інше ціле число. Подивіться на приклад нижче.

Python




# 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))>

зразок коду java

>

>

Вихід

The minimum value is -22>

У наведеній вище програмі замість того, щоб призначати більше значення вручну, sys.maxint використовується. Ця константа підтримується в Python версії 2.x. Значення, позначене константою, можна обчислити як:

maxint = 231– 1 (в 32-розрядному середовищі)

maxint = 263– 1 (у 64-розрядному середовищі)

в Python 2 , додавання 1 до maxint дає найвищий можливий довгий внутр і в Python 2.7 , віднімання 1 від maxint дає найменше можливе значення для цілого числа .

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)))>

>

>

Вихід

maxint :9223372036854775807 - maxint - 1 :9223372036854775807 - maxint + 1 :9223372036854775807 ->

Цю константу було видалено з Python 3 , оскільки цілі числа в цій версії вважаються довільної довжини. Якщо ви використовуєте цю константу в Python 3, ви отримаєте таку помилку. Розглянемо той самий приклад, де елемент мінімального значення потрібно знайти зі списку.

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))>

пара java
>

>

що таке сплячий режим

Вихід:

AttributeError: module 'sys' has no attribute 'maxint'>

Цю константу було видалено, оскільки більше не було обмежень для значення цілих чисел. в Python 3, було введено константу, подібну до цієї sys.maxsize . Це повертає найбільше можливе ціле значення типу змінної Py_ssize_t а також позначає розмір покажчика платформи. Вважається, що цей максимальний розмір обмежує розмір різних структур даних, таких як рядки та списки. Ще одна річ, яку слід зазначити, що в Python 3 внутр і довгий внутр зливаються в одне. Подивіться на приклад нижче для кращого розуміння.

Python3




# 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)))>

>

>

Вихід

maxint :9223372036854775807 - maxint - 1 :9223372036854775807 - maxint + 1 :9223372036854775807 ->