Функция range ( ) в Python
Python хранит миллион чисел… или нет? Секрет функции range()
Представьте, что вы пишете: numbers = range(1_000_000) Логичный вопрос: Python действительно создал миллион чисел и положил их в оперативную память? Нет. И здесь начинается одна из интересных особенностей Python. Когда мы пишем: range(1_000_000) Python не создаёт список: 0, 1, 2, 3, 4, 5, ... 999999 Вместо этого объект range хранит информацию примерно такого типа: «Начать с 0, идти до 1 000 000 с шагом 1». То есть ему достаточно знать: Поэтому: r = range(1_000_000) создаёт один объект range, а не миллион отдельных объектов-чисел...