Слышали, что один и тот же итератор можно раздвоить без предварительного копирования да... — 16 апреля 2026 г. в 17:00:53.518
Слышали, что один и тот же итератор можно раздвоить без предварительного копирования данных? Обычно итераторы в Python одноразовые, если вы их прошли, данные теряются: it = iter([1,2,3]) list(it); list(it) # второй раз пусто itertools.tee создаёт независимые итераторы, которые можно использовать отдельно: a, b = tee(it) Теперь оба итератора будут выдавать одинаковые значения, не мешая друг другу: next(a); next(a) next(b) Под капотом tee лениво буферизует элементы по мере чтения — это не копия списка, а кеширование потока. Полезно при работе со стримами, генераторами и пайплайнами, когда нужно подсмотреть данные без разрушения потока. tee позволяет переиспользовать поток данных без предварительного копирования. Python Ready | #совет

