Чтобы было у кого Некст дергать
В качестве домашнего задания тебе: реализуй класс А, который хранит ровно 3 числа без использования стандартных коллекций. Реализуй для него iter, который возвращает какой-то итератор (объект с next) который по очереди выдает эти три элемента. Генераторы не юзать, честно реализовать дандер метод Попробуй пройтись по нему циклом фор. А потом попробуй сделать вложенные циклы по одному экземпляру А() чтобы увидеть что они работают независимо #задача
спасибо большое)
https://gist.github.com/PGAndre/4f37be8058f5a0b63eab3563d7559590
Ну я же сказал без списков
как? class A: def __init__(self, k): self.k = k def __iter__(self): self.i = 0 return self def __next__(self): if(self.i >= len(self.k)): raise StopIteration self.i += 1 return self.i
и где эти три числа 🤔
зачем они?
они в условии
Вообще не то что я сказал
это точно возможно без коллекций и генераторов?) как заставить метод next отдавать поочереди три независимых элемента без yield и возможности по индексу их взять
конечно возможно
не подскажешь?
https://gist.github.com/PGAndre/82b90c60aa39b1c60ac22d8ec2e46504
тогда и я своё оверинжинирнутое решение покажу наверное
https://gist.github.com/thecaralice/7d3f9f875dd15e5718aa8a7f617dc8e2 вполне возможно, что я использую практики, принятые в расте, но не в питоне
class Iter(Generic[T]): src: A[T] cur: IterState | None = field(init=False, default=IterState.FIRST)
А авто гарантируют что будут числа по порядку?
Обсуждают сегодня