Iterations - for loop
Iteration, aka repeating, is a solution for tasks that need to be done over and over again.
Instead of writing dozens of lines of code for the same purpose, we can simplify it and shorten it to just a couple of lines. This way the code is both easier to read for the other programmers (fellow people hehe) and faster to process for the computer.
Also, simpler code reduces errors rate.
Examples of iterations are loops.
Looping means repeating something until a particular condition is satisfied.
Python has 3 Basic Loops:
For Loop - used when we know number of iterations (repetitions) in advance.
While Loop - for situations where the number of iterations is unknown beforehand.
Nested Loop - using one looping statement inside another looping statement.
For loop is used to execute the same instruction over and over again, a specific number of times.
for i in range(5): print(“Hello!”) Output: Hello! Hello! Hello! Hello! Hello!
In the first line, we declared how many repetitions are needed. In the second line, we wrote what should be repeated a given number of times. In this case, we asked Python to print the string “Hello!” 5 times.
Basic structure of the for loop:
for i in range(5): print(“Hello!”)
for - a keyword that signals that “for loop” is starting.
i - internal variable name which is keeping the counter value. Stands for “iteration”. We can read the whole line as “for 5 iterations/repetitions, please do the following:” For every loop, the 'i' variable increases by 1 because it's the counter. 'i' doesn't have to be 'i', we can switch it to another letter or another word, that are python approved for this (for example, you can’t use name of defined function instead of 'i').
#Loop using "unicorn" as internal variable, instead of "i" for unicorn in range(10): print(unicorn) #still works!
in range() - represents the list of numbers we are looping through (number of time the iteration is running). Python starts the counter from 0. It means that range(5) - will give a sequence of 5 numbers: 0, 1, 2, 3, 4 range() function has 3 parameters(start, end, steps), default values for start is 0 and step is 1. When we write range(5), we only give one parameter, and the function still works, because Python reads it as range(0,5,1) and the sequence starts with 0, increases by 5 counts, with step between each number being 1, by default.
We can change the parameters: range(1,20,3) this would result in iterations that starts from 1, goes up by 3 steps with the upper limit of 20: 1, 4,7,10,13,16,19.
Example: #print every 2 numbers (evens): for i in range (2, 10, 2): print(x) output: 2 4 6 8 (!) output does not include 10 because 10 is the upper limit (result only includes number under 10)
: adding a colon sign in the end of the first line is mandatory, otherwise an error will occur. Finally in the next line, we start writing the instruction, that is supposed to be repeated. This part isn’t starting right away, it should be indented. Indentation is the blank gap at the beginning of lines. Normal indentation is 4 spaces/tab long. Python would recognize 2 spaces or 4 spaces as an indentation, but 4 spaces length is more agreed upon and is used more wildly.
tip: How to write an instruction to get output of a list that starts from 1 instead of 0, accompanied by a string:
for i in range(10): print(i+1, "I love you")












