Форум сайта python.su
Что-то не понимаю. В командной оболочке набираю:
q = 5
w = 5
q is w
возвращает True
q = 555
w = 555
q is w
возвращает False
В чем дело?
Офлайн
Марк Лутц “Изучаем Python” 4 издание, стр. 203
Если вкратце, то интерпретатор кэширует малые целые числа и небольшие строки для повторного их использования, т.е переменные q и w указывают на один и тот же объект в первом случае
Отредактировано Stright (Март 21, 2017 22:24:26)
Офлайн
В целях оптимизации, повторного использования объектов и ускорения работы интерпретатор Питона выполняет кэширование малых целых чисел и небольших строк. Об этом подробно рассказывает М. Лутц в своей книге “Изучаем Python” (4-е изд.) на стр. 203, 204 и 306.
Офлайн
StrightПонятно, спасибо.
Марк Лутц “Изучаем Python” 4 издание, стр. 203Если вкратце, то интерпретатор кэширует малые целые числа и небольшие строки для повторного их использования
Офлайн