Sobes.tech
Junior — Middle
90

¿Se puede implementar en Python un iterador que no tenga un punto final?

Respuesta de la IA

sobes.tech AI

Да, в Python можно реализовать итератор без конечной точки завершения — бесконечный итератор. Такой итератор никогда не вызовет StopIteration и будет генерировать значения бесконечно.

Пример бесконечного итератора, который генерирует натуральные числа:

class InfiniteCounter:
    def __init__(self):
        self.num = 0

    def __iter__(self):
        return self

    def __next__(self):
        self.num += 1
        return self.num

# Использование:
counter = InfiniteCounter()
for i in counter:
    print(i)
    if i >= 10:
        break  # чтобы не зациклиться бесконечно

Также в стандартной библиотеке есть бесконечные итераторы, например itertools.count().