Генераторы и итераторы · 1 из 16
Противни по одному
Ночная смена. Конвейер выдаёт буханки одну за другой, и каждой нужен свой номер по порядку — он печатается на этикетке. Складывать все номера смены в список Тамара не даёт: за ночь их сорок тысяч, а на этикетку в каждый момент нужен ровно один.
Что сделать
Выдавайте номера буханок для этикеток по одному — не складывая сорок тысяч в список.
Что приходит
pervyy— номер первой буханки, целоеskolko— сколько буханок, целое от нуля
Что вернуть
Генератор: через yield отдаёт номера подряд с pervyy, всего skolko штук; list(vydacha(1, 5)) — [1, 2, 3, 4, 5].
Допишите функцию vydacha в редакторе справа.
Результат верните через return — то, что
напечатано, на проверку не влияет.
list(vydacha(1, 5))
[1, 2, 3, 4, 5]
Функция принимает номер первой буханки (целое) и количество буханок (целое, не меньше нуля). Отдаёт номера подряд, по одному, начиная с первого. Список не собирается и не возвращается: числа отдаются по мере надобности, через «yield». Если количество равно нулю, не отдаётся ничего.
Обсуждение
Вопросов пока нет.
Войдите, чтобы спросить.