Skip to content

Python Control Statements

What’s interesting to do with booleans, and expressions that return a boolean in particular, is that we can make decisions and take different roads depending on their True or False value.

In Python we do so using the if statement:

condition = True

if condition == True:
    # do something

When the condition test resolves to True, like in the above case, its block gets executed.

What is a block? A block is that part that is indented one level (4 spaces usually) on the right:

condition = True

if condition == True:
    print("The condition")
    print("was true")

The block can be formed by a single line, or multiple lines as well, and it ends when you move back to the previous indentation level:

condition = True

if condition == True:
    print("The condition")
    print("was true")

print("Outside of the if")

In combination with if you can have an else block, that’s executed if the condition test of if results to False:

condition = True

if condition == True:
    print("The condition")
    print("was True")
else:
    print("The condition")
    print("was False")

And you can have different linked if checks with elif, that’s executed if the previous check was False:

condition = True
name = "Roger"

if condition == True:
    print("The condition")
    print("was True")
elif name == "Roger":
    print("Hello Roger")
else:
    print("The condition")
    print("was False")

The second block in this case is executed if condition is False, and the name variable value is “Roger”.

In a if statement you can have just one if and else checks, but multiple series of elif checks:

condition = True
name = "Roger"

if condition == True:
    print("The condition")
    print("was True")
elif name == "Roger":
    print("Hello Roger")
elif name == "Syd":
    print("Hello Syd")
elif name == "Flavio":
    print("Hello Flavio")
else:
    print("The condition")
    print("was False")

if and else can also be used in an inline format, which lets us return a value or another based on a condition.

Example:

a = 2
result = 2 if a == 0 else 3
print(result) # 3

→ Get my Python Handbook
→ Get my Python Handbook

download all my books for free

  • javascript handbook
  • typescript handbook
  • css handbook
  • node.js handbook
  • astro handbook
  • html handbook
  • next.js pages router handbook
  • alpine.js handbook
  • htmx handbook
  • react handbook
  • sql handbook
  • git cheat sheet
  • laravel handbook
  • express handbook
  • swift handbook
  • go handbook
  • php handbook
  • python handbook
  • cli handbook
  • c handbook

subscribe to my newsletter to get them

Terms: by subscribing to the newsletter you agree the following terms and conditions and privacy policy. The aim of the newsletter is to keep you up to date about new tutorials, new book releases or courses organized by Flavio. If you wish to unsubscribe from the newsletter, you can click the unsubscribe link that's present at the bottom of each email, anytime. I will not communicate/spread/publish or otherwise give away your address. Your email address is the only personal information collected, and it's only collected for the primary purpose of keeping you informed through the newsletter. It's stored in a secure server based in the EU. You can contact Flavio by emailing flavio@flaviocopes.com. These terms and conditions are governed by the laws in force in Italy and you unconditionally submit to the jurisdiction of the courts of Italy.

Related posts about python: