Indentation
The most distinctive feature of Python is the use of indentation to mark blocks of code. I will use the if selection structure as an example below. If is followed by a condition, and if the condition is true, a code block belonging to the if is executed.
Let’s first look at the expression in C language (note, this is C, not Python!)
if ( i > 0 ) { x = 1; y = 2; }
If i > 0, we will perform the two assignment operations included in the brackets. What is contained in the parentheses is the block operation, which belongs to if.
In Python, for the same purpose, this passage looks like this
if i > 0: x = 1 y = 2
In Python, the brackets around i > 0 are removed, and the semicolon at the end of each statement is removed to indicate the block. The curly braces are also gone.
There is an extra: (colon) after if..., and there are four spaces indent before x = 1 and y =2. Through indentation, Python recognizes that these two statements belong to if.
The reason why Python is designed this way is purely for the program to look good.
if statement
Write a complete program and name it ifDemo.py. This program is used to implement the if structure.
i = 1 x = 1 if i > 0: x = x+1 print x
$python ifDemo.py # When running the
program to if, the condition is True, so x = x+1, is executed.
The print x statement is not indented, so it is outside the if.
If the first sentence is changed to i = -1, then if encounters a false value (False), x = x+1 belongs to if, and this sentence is skipped. print x has no indentation, is outside if, does not skip, and continues execution.
This writing method of using four spaces indentation to indicate affiliation will be seen again in the future. Forced indentation enhances program readability.
A more complex if selection:
i = 1 if i > 0: print 'positive i' i = i + 1 elif i == 0: print 'i is 0' i = i * 10 else: print 'negative i' i = i - 1 print 'new i:',i
There are three blocks here, which are led by if, elif, and else.
Python detects conditions. If the condition of if is found to be false, skip the following block and detect the condition of the next elif; if it is still false, execute the else block.
The program is divided into three branches through the above structure. The program only executes one of the three branches based on conditions.
The entire if can be placed in another if statement, that is, the nested use of the if structure:
i = 5 if i > 1: print 'i bigger than 1' print 'good' if i > 2: print 'i bigger than 2' print 'even better'
if i > 2 The following block is indented four spaces relative to the if to indicate its Belongs to this if, not the outer if.
Summary
The colon after the if statement
is indented with four spaces to indicate the affiliation. In Python, you cannot indent at will
if <条件1>: statement elif <条件2>: statement elif <条件3>: statement else: statement