Python Classroom
  • Introduction
  • About Python Classroom
  • Python Cloud Options
    • CS50 IDE
      • CS50 IDE Overview
      • CS50 IDE and Python
      • CS50 IDE Debugging
      • CS50 IDE Shortcuts
      • Linux Bash Shell
      • Vim Mode
        • Vim Tutorial
    • CS50 Sandbox
    • PythonAnywhere
    • Repl.it
  • Python Curriculum Map
    • Pedagogy
      • Python Professional Development
      • Teaching Tips
      • Assessment Tips
      • Rubrics
      • Activities
        • Picture Activity
        • Map Activity
        • Crossing the Bridge
        • NIM
        • Mastermind
        • Cards
          • Card Deck Algorithms
          • Sorting Cards
        • River Crossing
          • Jealous Boyfriends
          • Cannibals and Priests
          • Family
          • Police and the Thief
          • Humans and Monkeys
          • Moving Money
        • Crossing the River
        • Traveling Salesperson
        • Logic Problems
        • CIA Crack the Code
        • IQ Test
        • Puzzles
    • AP Computer Science Principles Framework
  • Python Philosphy
    • How to Practice Python
  • microbit
  • Turtle Graphics
    • Turtle Examples
    • Turtle Activities
    • Turtle Maze Problems
    • Turtle Graphics with loops
    • Turtle Snake
    • Turtle Graphics with Conditionals
  • Output
    • Output Examples
    • Output Mistakes
  • Variables
    • Variable Data Type Examples
    • Variable Role Examples
    • Variables Mistakes
    • Variables Problems
  • Math
    • Math Examples
    • Math Mistakes
    • Math Problems
    • Math Self Check
  • Input
    • Input Examples
    • Input Mistakes
    • Input Problems
  • Decisions
    • if
      • if Examples
      • if Mistakes
      • if Problems
    • if else
      • if else Examples
      • if else Problems
      • if / if else Problems
    • if elif else
      • if elif else Examples
      • if elif else Problems
    • nested if
      • nested if Examples
      • nested if Problems
    • Logical Operators
      • Logical Operators Examples
    • Adventure Game Project
  • Loops
    • while loop - count up
      • Examples
      • Problems
    • while loop - countdown
      • Examples
      • Problems
    • while loop - sentinel value
      • Problems
    • while loop - sentinel menu
      • Problems
    • for loop - range (one argument)
      • Examples
      • Problems
    • for loop - range (two arguments)
      • Problems
    • for loop - range (three arguments)
      • Problems
  • Lists
    • Lists - Numbers
      • Problems
    • Lists - Strings
      • Problems
      • Shopping Project
  • Dictionaries
  • String Methods
  • Functions
    • Variable Scope
    • Functions - no parameters
    • Functions - one parameter
    • Functions - return
    • Functions - lists
  • Files
  • Classes
    • Inheritance
  • Python Projects
    • Adventure Game
    • Restaurant Project
    • Trivia Game
    • Family Tree Project
  • Raspberry Pi
    • Raspberry Pi Models
    • Raspberry Pi Setup
  • Roblox
  • Glossary
Powered by GitBook
On this page
  • Objective
  • Introductory Problem
  • nested if
  • Example 1
  • Example 2
  • Example 3

Was this helpful?

  1. Decisions

nested if

Previousif elif else ProblemsNextnested if Examples

Last updated 5 years ago

Was this helpful?

Objective

After working through this lesson, you’ll be able to

  • Write Python coding using nested if statements.

Introductory Problem

Ask the user if they are hungry. If the user replies yes, print “Goto the grocery store”. Else if the user replies no, print “Stay Home”. Else print “invalid choice”.

hungry = input("Are you hungry? ")
if hungry == "Yes":
   print("Goto the Grocery Store")
elif hungry == "No":
   print("Stay Home")
else:
   print("Invalid choice")

nested if

Sometimes you want to make a decision based on the result of a previous decision. One way to do this in Python is using nested conditionals, a second conditional executes only if the result of the first conditional is True.

Example 1

In the if “Yes” indented block, ask the user how much does chocolate cost. If the user enters a price less than or equal to a dollar, print “buy 3”. Else if the user enters a price more than a dollar, print “buy 1”.

example2.py
hungry = input("Are you hungry? ")
if hungry == "Yes":
   print("Goto the Grocery Store")
   cost = float(input("How much does chocolate cost? "))
   if cost <= 1:
      print("Buy 3")
   else:
      print("Buy 1")
elif hungry == "No":
   print("Stay Home")
else:
   print("Invalid choice")

Example 2

In the elif “no” indented block, ask the user, do you want to play Fortnite. If the user enters, yes, print “see you tomorrow morning”. Else if the user enters no, print “Go back to studying”.

example3.py
hungry = input("Are you hungry? ")
if hungry == "Yes":
   print("Goto the Grocery Store")
   cost = float(input("How much does chocolate cost? "))
   if cost <= 1:
      print("Buy 3")
   else:
      print("Buy 1")
elif hungry == "No":
   print("Stay Home")
   fortnite = input("Do you want to play Fortnite? ")
   if fortnite == "yes":
      print("See you next week")
   elif fortnite == "no":
      print("Go back to studying")
else:
   print("Invalid choice")

Example 3

Under print “Go back to studying”, ask the user what their favorite subject is. If the user inputs “History”, print “that’s my favorite subject too!” Else print “we don’t have things in common”.

example4.py
hungry = input("Are you hungry? ")
if hungry == "Yes":
   print("Goto the Grocery Store")
   cost = float(input("How much does chocolate cost? "))
   if cost <= 1:
      print("Buy 3")
   else:
      print("Buy 1")
elif hungry == "No":
   print("Stay Home")
   fortnite = input("Do you want to play Fortnite? ")
   if fortnite == "yes":
      print("See you next week")
   elif fortnite == "no":
      print("Go back to studying")
      subject = input("What's your favorite subject? ")
      if subject == "History":
         print("That's my favorite subject too")
      else:
         print("We don't have things in common")
else:
   print("Invalid choice")