Python if else Statement

Python-if-else-statement

Python if…else Statement : I’m going to talk about conditional structures, which will allow you to do tests and go further in programming. Conditions allow you to execute one or more instructions in one case, other instructions in another case.

Conditions are an essential concept in programming. They will allow you to make a precise action if, for example, a variable is positive, another action if this variable is negative, or a third action if the variable is null.

Python IF statement

Here is the basic structure of a IF statement in python :

if EXPRESSION:
  STATEMENT

Example 1 :

a = 5
if a > 0: # If a is greater than 0
    print("a is greater than 0.")
Output : 
a is greater than 0.

The print function is executed if a is greater than 0.

Example 2

number = int(input('Enter a number: '))

if number > 100:
    print('The number entered is greater than 100!')

Save the code in a file and run it from the command line:

python test.py
Output:
The number entered is greater than 100!

The python script will ask you to enter a number. For example, if you enter 500, the conditional expression will be evaluated to True (500 is greater than 100), and the print function will be executed.

There are two important concepts to consider regarding conditions:

  • The first is the instruction block. An instruction block is a series of instructions that are executed in a specific case (by condition, as we have just seen, by repetition). Here, our block consists of only one instruction (the line that calls the print function). But nothing prevents you from putting several instructions in this block.
  • The second important notion is that of indentation. Indentation is understood to mean a certain shift to the right, obtained by one (or more) spaces or tabs. Indentations are essential for Python. It is not, as in other languages such as C++ or Java, a reading comfort but a way for the interpreter to know where the beginning and the end of a block are.

Python IF ELSE Statement

The first form of condition that we have just seen is practical but rather incomplete if we want to do several tests.

The statement ELSE allows us to define a first form of complement to our IF statement.

if EXPRESSION1:
    STATEMENT1
else:
    STATEMENT3

Example :

age = 21
if age >= 18:
    print("You're an adult.")
else:
    print("You're a minor.")
Output:
You're an adult.

The only subtlety is to realize that Python executes either one or the other, and never both. Note that this else statement must be at the same indentation level as the if statement it completes. In addition, it also ends with a colon since it is a condition.

Python IF ELIF ELSE Statement

The elif statement is a contraction of “else if”, which can be translated very literally as “otherwise if”. The Python if..elif..else statement takes the following form:

if EXPRESSION1:
    STATEMENT1
elif: EXPRESSION2:
    STATEMENT2
else:
    STATEMENT3

The conditions are evaluated sequentially. Once a condition returns TRUE, the remaining conditions are not performed, and the program control moves to the end of the if statements.

Example :

a=-10
if a > 0:
    print("a is positive.")
elif a < 0: # Négatif 
    print("a is négative.")
else:
    print("a is anull.")
Output
a is négative.

Unlike most of the programming languages, Python doesn’t have switch or case statements. A sequence of multiple elif statements can be used as a substitute for the switch or case statements.

Comparison operation

The conditions must necessarily introduce new operators, known as comparison operators :

OperatorDefinition
<Strictly less than
>Strictly superior to
<=Less than or equal to
>=Greater than or equal to
==Equal to
!=Not Equal to
Note : The equality of two values is compared with the operator "==" and not "=". The latter is the assignment operator and should not be used in a condition. 

The keywords AND,OR and NOT

It often happens that our conditions have to test several predicates, for example when we want to check if any variable, of integer type, is in a precise interval :

a=15
if a>=10 and a<=20:
    print("a is in the interval.")
else:
    print("a is not in the interval.")
Output:
a is in the interval.

Exercise

The purpose of the exercise is to determine whether a year entered by the user is leap year.

A year is leap year if it is a multiple of 4, unless it is a multiple of 100; however, it is considered leap year if it is a multiple of 400.

I invite you to go to the wikipedia page if you want more information.

Correction

I hope you solved it yourself! For those who have problems to solve this exercise, here is the solution ( It’s a solution among many others, you may very well have found something different but that works just as well 🙂 )

year=input("Enter a year : ") 
year=int(year) 
leap=False

if year % 400 == 0:
    leap=True
elif year % 100 == 0:
    leap=False
elif year % 4 == 0:
    leap=True
else:
    leap=False

if leap:
    print("The year entered is leap year.")
else:
    print("The year entered is not leap year.")

Summary

  • Conditions allow certain instructions to be executed in some cases, other instructions in another case.
  • Conditions are marked with the keywords IF ,ELIF and ELSE
  • The keywords IF and ELIF must be followed by a test
  • Booleans are either True or False data.

If you want to learn more about python, you can read this book (As an Amazon Partner, I make a profit on qualifying purchases) :

Back to the Python section

By ayed_amira

I'm a data scientist. Passionate about new technologies and programming I created this website mainly for people who want to learn more about data science and programming :)

Leave a comment

Your email address will not be published.