Теперь Кью работает в режиме чтения

Мы сохранили весь контент, но добавить что-то новое уже нельзя

В чем разница между функциями range и xrange в Python 2.X?

ПрограммированиеData science+3
Анонимный вопрос
Data Science
  · 2,2 K
старший разработчик в pseven.io  · 1 июл 2022
В Python 2 было две разные функции для генерирования последовательности чисел:
  • range() возвращал список, то есть объект класса list
  • xrange() появился позже и являлся генератором, то есть ленивой функцией, возвращающей итерируемое
В Python 3 вместо двух разных функций осталась одна функция range(), которая ведёт себя как xrange().
Отличие в том, что она ленивая, то есть не создаёт сразу весь список чисел, вместо этого она создаёт каждое следующее число непосредственно перед отдачей потребителю. Это быстрее, чем создавать все числа сразу, однако у итерируемого мы не можем взять значение по индексу, как у списка. Если вам нужен именно список, оберните range() в функцию list().
Что-то осталось непонятно? Спроси в нашей группе в Телеграме!Перейти на t.me/jstsmentor
1 эксперт согласен