'If...Else' is somewhat similar to Decision Making.
Everyone has to make some kind of Decision in everyday life. Be it choosing a shirt or going to office by Bus or Cab.
Even in case of Python, it has to make Decision.
And to make a Decision, 'If...Else' is used by Python.
There are three Decision Making statements used by Python :
Let us see them in detail.
Let us understand 'if' statement with the below example:
Say, you have a friend, who cannot remember anything. Now, you ask him to go to the market and get 1 kg Apple. You also tell him, if the price of Apple is less than 150 bucks, only then he should buy the Apple.
And since your friend has a weak memory. He takes out his notebook and writes :
"If the price of Apple is less than 150 then buy the apples"
Now, if your friend has to write the same thing in Python. How would he write it?
Let us see with the below example.
price = 120 if price < 150: print("Buy the apples")
So, your friend writes the same thing in Python for the same statement, "If the price of Apple is less than 150 then buy the apples".
if price < 150: print("Buy the apples")
Quite Simple ! Right ?
It works in two steps :
price = 120
if price < 150: print("Buy the apples")
Now, that we have seen the 'if' statement. Let us look at the syntax of 'if' statement in detail.
if price < 150: print("Buy the apples")
The above 'if' statement begins with a 'if', followed by the actual condition (i.e. price < 150) then with a colon ':'.
if price < 150:
Now, if the above condition (i.e. price < 150) is 'true'. The 'print(...)' statement is executed.
print("Buy the apples")
There can be lot of statements inside the 'if' statements. What I meant is, there can be a lot of print statements.
if price < 150: print("Buy the apples") print("The apples should be of good quality") print("Take the apples in a carry bag")
But there is something to note. i.e. The 'if' statement doesn't have any 'end' statement. Then how does Python comes to know, all the above 'print(...)' statements belongs to the 'if' block?
To determine that Python uses something called as 'Indentation'. i.e. The statements inside the 'if' block should have at least one space in fron of it.
Just for an example, the below code is incorrect and ends up with an error.
price = 120 if price < 150: print("Buy the apples")
If we see the above code, it ended with the error,
And points to the 'print' statement.
It meant that the 'print(...)' statement should have 'Indentation'(i.e. At least one space in front of it).
if price < 150: print("Buy the apples")
The above 'if' statement can be corrected by using just one space or 'Indentation'.
if price < 150: print("Buy the apples")
And the above code works fine.
So, in the above example we have seen your friend is happy because the price of apple is less than 150.
But what if the price of apple is more than 150. Say, the price of apple is 180. And he doesn't know what to do.
price = 180 if price < 150: print("Buy the apples")
And there is no output. Because the price of apple is 180 which is more than 150.
So, your friend comes back to you and you tell him to use 'else' statement with 'if'.
So, you tell your friend,
"If the price of Apple is less than 150 then buy the apples else do not buy the apples"
So, he writes the same thing in Python using 'else' statement.
price = 180 if price < 150: print("Buy the apples") else: print("Do not buy apples")
So, to implement the line,
"If the price of Apple is less than 150 then buy the apples else do not buy the apples".
We have used the 'else' statement along with 'if'.
if price < 150: print("Buy the apples") else: print("Do not buy apples")
The syntax of 'else' statement is almost same as 'if'. Else statement uses the 'else' keyword followed by colon ':'.
else:
And the statements inside 'else' also uses 'Indentation'.
else: print("Do not buy apples")
Now, your friend is happy. But you figured out that the shopkeeper is selling two types of apples for a fixed price.
And you give the new instruction to your friend.
So, this time you tell your friend,
And he writes the same in Python.
price = 200 if price == 100: print("Buy 1st kind of apple") elif price == 200: print("Buy 2nd kind of apple") else: print("Do not buy apples")
So, in the else part, if we need to provide a condition (i.e. price == 200).
We need to use 'elif'.
elif price == 200: print("Buy 2nd kind of apple")
And the syntax of 'elif' is just like 'if' and 'else' statement.
Say, you need to write a program to find the greatest of two numbers. And the input needs to be taken from the user.
first_num = int(input("Enter the first number : ")) second_num = int(input("Enter the second number : ")) if first_num > second_num: print("The first number is greater than the second number.") elif first_num < second_num: print("The second number is greater than the first number") else: print("The first number and the second number are equal")
So, the output will be based on the numbers entered by the user.
first_num = int(input("Enter the first number : "))
second_num = int(input("Enter the second number : "))
if first_num > second_num: print("The first number is greater than the second number.")
elif first_num < second_num: print("The second number is greater than the first number")
Just note that if both the conditions of 'if' and 'elif' is not satisfied, then we come to the 'else' part.
else: print("The first number and the second number are equal")
Which means both the values are equal.