__iter__
Но вопрос конечно требует уточнения. "Переопределить работу цикла" очень вольная формулировка
цикл for будет работать как работает независимо от твоих дандеров а вот то как отдавать элементы ты можешь определить сам ага
Ну iter - нужно просто как правило return self делать ведь, а именно что он будет возвращать - для этого next я так понимаю то-есть если в списке есть элементы с атрибутами, мне нужно чтобы в цикле возвращались не элементы а лишь 1 или несколько аррибутов этого эелмента я так понимаю нужен счётчик индексов элемента + соответственно указание самого атрибута элемента
Не надо return self делать в итер иначе не сможешь одновременно двумя циклами идти
Ты смешал две сущности — итерируемую последовательность и итератор.
сразу return [x.attr for x in lst] ?
тогда не поняв нихуа
вот это оч любопытный момент а как надо тогда?
Либо отдельный класс итератор либо воспользоваться генераторами
отдельный класс в классе? если генераторы - то я так понимаю в iter их делать? return (x.attr for x in lst) ?
Почему в классе? Просто отдельный класс. С генератором норм, да
Обсуждают сегодня