Indentation in Python
Indentation is a very important concept of Python because without proper indenting the Python code, you will end up seeing IndentationError
and the code will not get compiled.
Indentation
In simple terms indentation refers to adding white space before a statement. But the question arises is it even necessary?
To understand this consider a situation where you are reading a book and all of a sudden all the page numbers from the book went missing. So you don’t know, where to continue reading and you will get confused. This situation is similar with Python. Without indentation, Python does not know which statement to execute next or which statement belongs to which block. This will lead to IndentationError
.
In the above example,
- Statement (line 1), if condition (line 2), and statement (last line) belongs to the same block which means that after statement 1,
if condition
will be executed. and suppose theif condition
becomesFalse
then the Python will jump to the last statement for execution. - The nested
if-else
belongs to block 2 which means that ifnested if
becomes False, then Python will execute the statements inside theelse
condition. - Statements inside nested
if-else
belongs to block 3 and only one statement will be executed depending on theif-else
condition.
Python indentation is a way of telling a Python interpreter that the group of statements belongs to a particular block of code. A block is a combination of all these statements. Block can be regarded as the grouping of statements for a specific purpose. Most of the programming languages like C, C++, Java use braces { }
to define a block of code. Python uses indentation to highlight the blocks of code. Whitespace is used for indentation in Python. All statements with the same distance to the right belong to the same block of code. If a block has to be more deeply nested, it is simply indented further to the right. You can understand it better by looking at the following lines of code.
Example #1:
# Python program showing # indentation site = 'gfg' if site = = 'gfg' : print ( 'Logging on to geeksforgeeks...' ) else : print ( 'retype the URL.' ) print ( 'All set !' ) |
Output:
Logging on to geeksforgeeks... All set !
The lines print(‘Logging on to geeksforgeeks…’)
and print(‘retype the URL.’)
are two separate code blocks. The two blocks of code in our example if-statement are both indented four spaces. The final print(‘All set!’)
is not indented, and so it does not belong to the else-block.
Example #2:
j = 1 while (j< = 5 ): print (j) j = j + 1 |
Output:
1 2 3 4 5
To indicate a block of code in Python, you must indent each line of the block by the same whitespace. The two lines of code in the while
loop are both indented four spaces. It is required for indicating what block of code a statement belongs to. For example, j=1
and while(j<=5):
is not indented, and so it is not within while
block. So, Python code structures by indentation.
Note: Python uses 4 spaces as indentation by default. However, the number of spaces is up to you, but a minimum of 1 space has to be used.
Last Updated on March 17, 2022 by admin