Объясните механизм: почему распаковка итератора в позицию со звёздочкой дочитывает его до конца?
База Hintsage
Коллекции и итераторы
Коллекции, comprehensions, iterators и generators.
Практика
Вопросы: Коллекции и итераторы
Ключ удалили из словаря, затем добавили снова: где он окажется при следующем обходе?
В defaultdict обращение по отсутствующему ключу вызывает фабрику, но проверка через get — нет. Каким механизмом определяется это различие?
На каком этапе генераторного выражения возникает ошибка, выброшенная при вычислении источника первого for?
Разберите практическую ситуацию: генератор передали в any, но его побочные эффекты наблюдаются не для всех элементов. Каким механизмом определяется момент остановки обхода?
Передайте один и тот же итератор в два аргумента zip: как будут сформированы пары?
В матрице, созданной повторением списка, изменение одной строки меняет все строки. Какой механизм ссылок объясняет это поведение?
Практическая ситуация: после поверхностного копирования списка изменение вложенного списка отражается в оригинале. Какой механизм Python это объясняет?
Представьте потоковый источник: почему выборка через itertools.islice не позволяет пропустить элементы без их фактического потребления?
После приостановки внешнего генератора на yield from обычного списка ему передали ненулевое значение через send(). Что произойдёт с этим значением?
Что объясняет ошибку при попытке получить длину объекта map через len?
Представьте итератор, который однажды сообщил об окончании обхода. Что обязан возвращать его следующий вызов __next__()?
В set comprehension два разных объекта имеют одинаковый хэш и сравниваются как равные. Сколько элементов окажется в результате?
Генератор пытается получить следующий элемент у самого себя во время собственного выполнения. Как Python завершит такую попытку?
После вызова функции, содержащей yield, какие действия её тела выполнены до первого получения элемента?
Сравните область видимости переменной цикла и имени, присвоенного оператором присваивания внутри comprehension.
От чего зависит объём внутреннего буфера itertools.tee при разной скорости потребителей одного итератора?
Как цикл for отличает штатное завершение итератора от StopIteration, возникшего в теле цикла?
Разберите последствие: что произойдёт при закрытии генератора, если его блок finally пытается выполнить yield?
Как встроенная функция next с запасным значением меняет сигнализацию конца итератора и почему это важно при обработке данных?
Показано 1–20 из 48