Decision Structures, String Comparison, Nested Structures Best Powerpoint Layout Ever!
Warm Up Challenge Recreate the overtime calculation program that asks the user for their hourly rate and how many hours they work and spits out their wages for the week Really think about the process before working on the code Challenge: try to accomplish this using only one “if” statement. You cannot use the “else” statement either, that doesn’t count!
The IF-ELSE Statement Previously, we wrote “IF” statements to check for a condition, and our programs followed the order of the program according to whether the conditions held “True” or “False” Now, we will add in another branch of execution based on the value of the Boolean expression
The IF-ELSE Statement We can do this by adding the reserved word “else” This tells the program to check for the “if” condition and if it is not satisfied, run the code branched under the “else” statement You need to add a colon at the end of each else statement
The IF-ELSE Statement Previously, we had to use two “if” statements like this: if temperature < 32: print(“It’s freezing outside”) if temperature >= 32: print(“It’s a normal day in October … ”)
The IF-ELSE Statement Now, with the “else”, we can write our codes like this: if temperature < 32: print(“It’s freezing outside”) else: print(“It’s a normal day in October … ”)
The IF-ELSE Statement
The IF-ELSE Statement hours = float(input(“how many hours did you work?”)) rate = float(input(“what’s your hourly rate?”)) if hours > 40: print(“Your total is”, (40*rate) + ( (hours - 40)*1.5*rate) ) else: print(“Your total is”, hours*rate)
String Comparison So far, we’ve been comparing data as numeric types We can also compare strings The way we do this is to convert all characters back to their basic data type, all one’s and zero’s using the ASCII/UNICODE table
ASCII Table
String Comparison When comparing strings, Python will compare one letter at a time, in the order that they appear Example: “animal” < “banana” # True Because the letter “a” in animal has a lower ASCII value than the letter “b” in banana, this Boolean expression holds True
String Comparison “dog” > “cat” # is “dog” greater than “cat”? “fish” < “alligator” # is “fish” less than “alligator”? “elephant” == “tiger” # are “elephant” and “tiger” equal? “Mr. Seok” != “Donald # are these different strings?
Practice: Passwords Write a program that asks the user to input a new password and store it in a variable Then, ask the user to confirm the password they just typed If they are exactly the same, then print out “Great! Password was saved!” Otherwise, print out “Sorry, the two passwords did not match.”
Basic String Manipulation Python has a huge list of string manipulation commands written in a package. We will take a look at many of them, but for now we’ll take a look at: lower() # this changes all characters into lower case upper() # this one changes into upper case
Basic String Manipulation These two commands are not actually built into Python’s function library, therefore we need to refer to a separate module We call this the “str” module Examples: string_lower = str.lower (“Hello, World!”) # hello, world! string_upper = str.upper (“Hello, World!”) # HELLO, WORLD!
Basic String Manipulation A module is a file containing functions defined in Python and other statements string_lower = str.lower (“Hello, World!”) The characters “ str. ” calls on a module entitled “str” that Python can access but is not directly built into the shell The word “lower()” calls the function within that specific module
Practice: Passwords Rewrite your password program so that it is not case sensitive Such that, “password” and “PaSsWoRd” are considered valid entries
Practice: Alphabetizing Strings Write a program that asks the user to input two names Then print back these names in alphabetical order Note: Keep in mind that lower case letters hold “greater” values than that of the capital letters
String Length Python also has a function that counts the number of characters in a string We call it the len() function and it returns an integer Example: count = len(“Donald”) # count will hold value 6
Practice: Compare Size of Strings Write a program that asks the user for two names Sort them in size order and print them out