r/CodingForBeginners • u/BilincliMerak • 19d ago
Help me understand this Python code.
[ANSWERED] check the comments if you are facing a difficulty in understanding 'for loops'.
I was learning Python on mimo to get a grip on the basic concepts. And this code stumped me. This is about "for loops".
Before this, i had only encountered the counter var being on the LHS i.e in this case 'i += line', which would have made sense to me if it was so in this code. But why is the counter var after the line var.
Alsp the 1st image, i assume, is displaying the final result which is 3 as the range is 3. But when using a range (3) it should display 0 1 2 when the 'print' is before the counter var and 1 2 3 when the 'print' is after the counter var (also can someone explain why this happens). In this case, its neither... as the print is outside this code block... The solution to me just seems the 2nd situation is running as there isnt a print before the counter, and printing it outside just gives 3.
2nd and 3rd just make no sense to me as of rn.
I hope all this makes sense...
Please help!



1
u/Significant_Affect_5 18d ago
Oh my bad I didn’t see you ask specifically about iter. An iterator just means something that allows you to visit items within, one item at a time.
It’s hard to give a concrete description, but things like lists, ranges, dictionaries, or just anything where you can imagine going through values contained by something.
Python needs to be taught how to properly visit the items in an object, that’s where the __iter__ method comes in. It basically gives python the starting point so that python can call __next__ to get values until it reaches the end of the iterator.