Menu Close

Articles

Python: decisions

Making decisions

The most common and maybe the most important statement you need to learn is the decision statement. This is represented in Python using the if  keyword followed by a conditional expression then followed by “:” like in example below:

# ------------------------------------------
# program example for decision statement
# ------------------------------------------
x = int(input("Please enter an integer: "))
if x < 0:
    x = 0
    print('Negative changed to zero')
elif x == 0:
    print('Zero')
elif x == 1:
    print('Single')
else:
    print('More')
pass

# end program

This is also called multi-deck decision statement becouse there are several blocks that can be executed in different cases. The default case do not have a condition and will execute if no other case condition is satisfied.

Running program

If you save this code as a file: decision.py and run you will have:

>f:\GitHub\sandbox\snippets>python decision.py

Please enter an integer: 0
Zero

>f:\GitHub\sandbox\snippets>python decision.py

Please enter an integer: 1
Single

>f:\GitHub\sandbox\snippets>python decision.py

 Please enter an integer: 2
 More

Indentation

Python is using mandatory indentation of 4 spaces.  To exit from decision statement you can start a new statement at the beginning of next row. This will allow the interpretor to distinguish between a blok of code amd other statements.

Conditions

The decision statement is using one or several conditions. A condition is a logical expression or a Boolean expression that returns True or False. In Python an expression that do not return 0 or “” or None it is considered True. You can use decisions to check if an object is initialized or a number has value not equal to 0.

Examples:

x = 0
if x:
    print("x is not zero")
else:
    print("x is zero")

Will print:

x is zero

Notice I’m using assignment statement (single equal) “=” to make a new variable x having initial value == 0.

Logical True and False

Logical values in Python are True = 1 and False ==0. These values are constant and can be used in conditions to make decisions. You can compare a value with a logical constant or assign a value to a variable.

>>> v = True
>>> if v: print("yes")

yes

Relation Operators:

To compare numbers we use relation operators:

  • Is equal:   1 == 1
  • Is not equal:  1 != 2
  • Greater then: 2 > 1
  • Less then:  1 < 2
  • Greater then or equal to: 2 >= 2
  • Less the or equal to:  0 <= 1

Logical Operators:

To make other decisions we use keywords:

  • or
  • and
  • not

For example:

>> True and True
True
>> not True
False
>> False or True
True
>> not False
True

 

….

Read next: Repetition