Day 2 Lesson 7 Conditionals and Loops Python

















- Slides: 17

Day 2 – Lesson 7 Conditionals and Loops Python Mini-Course University of Oklahoma Department of Psychology 1 Python Mini-Course: Day 2 - Lesson 7 4/18/09

Lesson objectives 1. Use conditional statements in Python, including the “if”, “if…else”, and “if…elif” statements 2. Use Boolean logic to create complex conditionals 3. Use the “for” statement to create loops 2 Python Mini-Course: Day 2 - Lesson 7 4/18/09

Conditional execution (if…) Syntax: if condition: do_something Condition must be statement that evaluates to a boolean value (True or False) 3 Python Mini-Course: Day 2 - Lesson 7 4/18/09

Example: Checking user input x = raw_input("X? ") if x. isdigit(): print "You input a number" 4 Python Mini-Course: Day 2 - Lesson 7 4/18/09

Alternative execution Syntax: if condition: do_something else: do_alternative 5 Python Mini-Course: Day 2 - Lesson 7 4/18/09

Example: Checking user input x = raw_input("x? ") if x. isdigit(): print "You input a number" else: print "Please input a number next time" 6 Python Mini-Course: Day 2 - Lesson 7 4/18/09

Example: Avoiding division by zero x = int(raw_input("x? ")) y = int(raw_input("y? ")) if y <> 0: print x / y else: print "Attempted division by zero" 7 Python Mini-Course: Day 2 - Lesson 7 4/18/09

Chained conditionals Syntax: if condition: do_something elif condition: do_alternative 1 else: do_alternative 2 8 Python Mini-Course: Day 2 - Lesson 7 4/18/09

Example: x = int(raw_input("x? ")) y = int(raw_input("y? ")) if x < y: print 'x is less than y' elif x > y: print 'x is greater than y' else: print 'x and y are equal' 9 Python Mini-Course: Day 2 - Lesson 7 4/18/09

Notes on conditionals You have to have at least one statement inside each branch but you can use the pass command while stubbing if x < 0: pass #Handle neg values 10 Python Mini-Course: Day 2 - Lesson 7 4/18/09

Notes on conditionals You can have as many elif branches as you need This replaces the select and switch commands in other languages Conditionals can be nested Example: nested. py 11 Python Mini-Course: Day 2 - Lesson 7 4/18/09

Complex condition statements Use Boolean logic operators and, or, and not to chain together simple conditions Example: boolean. py 12 Python Mini-Course: Day 2 - Lesson 7 4/18/09

The for loop Used to repeat a section of code a set number of times Syntax: for target in sequence: do_statements 13 Python Mini-Course: Day 2 - Lesson 7 4/18/09

Example: (power. py) def power(base, exponent): val = base for x in range(1, exponent): val = val * base print val power(3, 4) 14 Python Mini-Course: Day 2 - Lesson 7 4/18/09

Example: (power. py) def power(base, exponent): val = base for x in range(1, exponent): print x, val = val * base print val 15 Python Mini-Course: Day 2 - Lesson 7 4/18/09

Example: (power. py) def power(base, exponent): val = base for x in range(1, exponent): print x, val = val * base print val 16 Python Mini-Course: Day 2 - Lesson 7 4/18/09

Exercises 1. Find a major bug in the power function and correct it 2. Add a docstring to the power function 3. Add type checking and value checking to the power function 17 Python Mini-Course: Day 2 - Lesson 7 4/18/09