Ошибка 1. return вместо yield
# ❌ Ошибка
bad_gen():
return 1
return 2
Исправление: используйте yield для возврата нескольких значений.
Ошибка 2. Ожидание списка
# ❌ Ошибка
def gen():
yield 1
yield 2
print(len(gen())) # TypeError
Исправление: преобразуйте в список: len(list(gen())).
Ошибка 3. Бесконечный цикл без остановки
# ❌ Ошибка
for value in infinite_counter():
print(value) # никогда не остановится
Исправление: добавьте условие выхода: break или islice.