Alexandru Vlasnita4,180 Points
I have no idea how to properly use this __iter__
What am i doing wrong it here?
class Letter: def __init__(self, pattern=None): self.pattern = pattern def __iter__(self): for item in self.pattern: yield from self.pattern def __str__(self): output =  for blip in self.pattern: if blip == '.': output.append('dot') else: output.append('dash') return '-'.join(output) class S(Letter): def __init__(self): pattern = ['.', '.', '.'] super().__init__(pattern)
Steven Parker182,288 Points
You're close, but since your loop is already iterating each element of the pattern as "item", you just need to "
yield item" in the body of the loop.
If you want to use "
yield from", it would replace the loop (and make the method even more compact).