Sobes.tech
Junior — Middle
111

Чӣ гуна модел Итератор амалӣ карда мешавад ва дар барномасозӣ барои чӣ истифода мешавад?

Ҷавоб аз AI

sobes.tech AI

Паттерн Итератор позволяет последовательно обходить элементы коллекции без раскрытия её внутренней структуры. В Python итератор реализуется через методы __iter__() и __next__().

Применяется для удобного и универсального перебора элементов, например, в цикле for.

Пример реализации итератора для пользовательского класса:

class MyRange:
    def __init__(self, start, end):
        self.current = start
        self.end = end

    def __iter__(self):
        return self

    def __next__(self):
        if self.current >= self.end:
            raise StopIteration
        val = self.current
        self.current += 1
        return val

for i in MyRange(1, 5):
    print(i)  # Выведет числа от 1 до 4

Таким образом, итератор инкапсулирует логику обхода, позволяя клиентскому коду работать с разными коллекциями единообразно.