Встречается на собеседованиях • сегодня

Какие методы должен поддерживать итерируемый объект в Python

Итерируемый объект в Python должен поддерживать метод __iter__(), который возвращает итератор. Итератор, в свою очередь, должен реализовывать метод __next__() для последовательного возврата элементов.

Пример:

python
class MyIterable:
    def __init__(self, data):
        self.data = data
text
def __iter__(self):
    return iter(self.data)  # или self.Iterator(self)

class Iterator:
def init(self, iterable):
self.iterable = iterable
self.index = 0

text
def __next__(self):
    if self.index >= len(self.iterable.data):
        raise StopIteration
    value = self.iterable.data[self.index]
    self.index += 1
    return value
text

Итерируемый объект может также поддерживать `__getitem__()` для совместимости со старым стилем итерации, но предпочтительно использовать `__iter__()`.
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы