Lab 4¶
Submission instructions¶
- Download the notebook from https://geohey.gishub.org/labs/lab4
- Complete the lab questions
- Restart Kernel and Run All Cells
- Upload the notebook to your GitHub repository
- Make sure the notebook has an
Open In Colab
badge. Click on the badge to make sure your notebook can be opened in Colab. - Submit the link to the notebook on your GitHub repository to Canvas
from datetime import datetime
now = datetime.now()
print(f"Submitted time: {now}")
Submitted time: 2024-02-29 14:38:54.186905
Question 1¶
Personal Message: Use a variable to represent a person’s name, and print a message to that person. Your message should be simple, such as, “Hello Eric, would you like to learn some Python today?”
x = "Smith"
print(f"Hello {x}, would you like to learn python today")
Hello Smith, would you like to learn python today
Question 2¶
Name Cases: Use a variable to represent a person’s name, and then print that person’s name in lowercase, uppercase, and title case.
x= "steve smith"
print(x.title())
print(x.lower())
print(x.upper())
Steve Smith steve smith STEVE SMITH
Question 3¶
Famous Quote: Find a quote from a famous person you admire. Print the quote and the name of its author. Your output should look something like the following, including the quotation marks:
Albert Einstein once said, “A person who never made a mistake never tried anything new.”
quote = "If you have built castles in the air, your work need not be lost; that is where they should be.Now put foundations under them."
author = "Henry David Thoreau"
print(f'"{quote}"\n- {author}')
"If you have built castles in the air, your work need not be lost; that is where they should be.Now put foundations under them." - Henry David Thoreau
Question 4¶
Stripping Names: Use a variable to represent a person’s name, and include some whitespace characters at the beginning and end of the name. Make sure you use each character combination, "\t" and "\n", at least once. Print the name once, so the whitespace around the name is displayed. Then print the name using each of the three stripping functions, lstrip(), rstrip(), and strip().
name = "\t \n\tSteve Smith \t\n"
print("Name with whitespace:", name)
print(name.lstrip())
print(name.rstrip())
print(name.strip())
Name with whitespace: Steve Smith Steve Smith Steve Smith Steve Smith
Question 5¶
Names: Store the names of a few of your friends in a list called names. Print each person’s name by accessing each element in the list, one at a time.
names= ['Bryson', 'Jack', 'Aiden', 'Dalton']
for name in names:
print(name)
Bryson Jack Aiden Dalton
Question 6¶
Your Own List: Think of your favorite mode of transportation, such as a motorcycle or a car, and make a list that stores several examples. Use your list to print a series of statements about these items, such as “I would like to own a Honda motorcycle.”
motorcycle_brands= ['Harley', 'Honda', 'Suzuki', 'Indian']
for brand in motorcycle_brands:
print("I would like to drive a", brand, "motorcylce")
I would like to drive a Harley motorcylce I would like to drive a Honda motorcylce I would like to drive a Suzuki motorcylce I would like to drive a Indian motorcylce
Question 7¶
Pizzas: Think of at least three kinds of your favorite pizza. Store these pizza names in a list, and then use a for loop to print the name of each pizza.
Modify your for loop to print a sentence using the name of the pizza instead of printing just the name of the pizza. For each pizza you should have one line of output containing a simple statement like I like pepperoni pizza.
favorite_pizzas = ["Meat lovers", "Veggie", "Supreme"]
print("List of favorite pizzas")
for pizza in favorite_pizzas:
print(pizza)
print("\nSentences about favorite pizzas")
for pizza in favorite_pizzas:
print("I love", pizza, "pizza.")
List of favorite pizzas Meat lovers Veggie Supreme Sentences about favorite pizzas I love Meat lovers pizza. I love Veggie pizza. I love Supreme pizza.
Add a line at the end of your program, outside the for loop, that states how much you like pizza. The output should consist of three or more lines about the kinds of pizza you like and then an additional sentence, such as I really love pizza!
favorite_pizzas = ["Meat lovers", "Veggie", "Supreme"]
print("List of favorite pizzas")
for pizza in favorite_pizzas:
print(pizza)
print("\nSentences about favorite pizzas")
for pizza in favorite_pizzas:
print("I love", pizza, "pizza.")
print("\n I really like pizza!")
List of favorite pizzas Meat lovers Veggie Supreme Sentences about favorite pizzas I love Meat lovers pizza. I love Veggie pizza. I love Supreme pizza. I really like pizza!
Question 8¶
Animals: Think of at least three different animals that have a common characteristic. Store the names of these animals in a list, and then use a for loop to print out the name of each animal.
Modify your program to print a statement about each animal, such as A dog would make a great pet.
animals = ["Dog", "Bird", "Fox"]
print("List of animals:")
for animal in animals:
print(animal)
for animal in animals:
print("A", animal.lower(), "would make a great pet.")
List of animals: Dog Bird Fox A dog would make a great pet. A bird would make a great pet. A fox would make a great pet.
Add a line at the end of your program stating what these animals have in common. You could print a sentence such as Any of these animals would make a great pet!
animals = ["Dog", "Bird", "Fox"]
print("List of animals:")
for animal in animals:
print(animal)
for animal in animals:
print("A", animal.lower(), "would make a great pet.")
print("\nAny of these animals would make a great pet!")
List of animals: Dog Bird Fox A dog would make a great pet. A bird would make a great pet. A fox would make a great pet. Any of these animals would make a great pet!
Question 9¶
Summing a Hundred: Make a list of the numbers from one to one hundred, and then use min()
and max()
to make sure your list actually starts at one and ends at one hundred. Also, use the sum() function to see how quickly Python can add a hundred numbers.
numbers = list(range(1, 101))
minimum = min(numbers)
maximum = max(numbers)
total_sum = sum(numbers)
print(numbers)
print(minimum)
print(maximum)
print(total_sum)
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100] 1 100 5050
Question 10¶
Odd Numbers: Use the third argument of the range()
function to make a list of the odd numbers from 1 to 20. Use a for
loop to print each number.
odd_numbers = list(range(1, 21, 2))
for number in odd_numbers:
print(number)
1 3 5 7 9 11 13 15 17 19
Question 11¶
Threes: Make a list of the multiples of 3 from 3 to 30. Use a for
loop to print the numbers in your list.
multiples_3 = []
for number in range(3, 31, 3):
print(number)
3 6 9 12 15 18 21 24 27 30
Question 12¶
Cube Comprehension: Use a list comprehension to generate a list of the first 10 cubes.
cubes = [number ** 3 for number in range(1, 11)]
print(cubes)
[1, 8, 27, 64, 125, 216, 343, 512, 729, 1000]
Question 13¶
Slices: Using one of the programs you wrote in this lab, add several lines to the end of the program that do the following:
Print the message The first three items in the list are:. Then use a slice to print the first three items from that program’s list.
odd_numbers = list(range(1, 21, 2))
print(odd_numbers[:3])
[1, 3, 5]
Print the message Three items from the middle of the list are:. Use a slice to print three items from the middle of the list.
print("Three items from the middle of the list are:")
middle_start = len(odd_numbers) // 2 - 1
middle_end = middle_start + 3
print(odd_numbers[middle_start:middle_end])
Three items from the middle of the list are: [9, 11, 13]
odd_numbers = list(range(1, 21, 2))
print("Three items from the middle of the list are:",)
odd_numbers[4:7]
Three items from the middle of the list are:
[9, 11, 13]
Print the message The last three items in the list are:. Use a slice to print the last three items in the list.
odd_numbers = list(range(1, 21, 2))
for number in odd_numbers:
print(number)
print("The last three items in the list are:")
print(odd_numbers[-3:])
1 3 5 7 9 11 13 15 17 19 The last three items in the list are: [15, 17, 19]
Question 14¶
Buffet: A buffet-style restaurant offers only five basic foods. Think of five simple foods, and store them in a tuple.
Use a for loop to print each food the restaurant offers.
foods = ("Pizza", "Pasta", "Salad", "Sandwich", "Soup")
print("The restaurant offers the following foods:")
for food in foods:
print(food)
The restaurant offers the following foods: Pizza Pasta Salad Sandwich Soup
The restaurant changes its menu, replacing two of the items with different foods. Add a line that rewrites the tuple, and then use a for loop to print each of the items on the revised menu.
foods = ("Pizza", "Pasta", "Salad", "Sandwich", "Soup")
print("Original menu:")
for food in foods:
print(food)
revised_foods = ("Pizza", "Sushi", "Sandwich", "Burger", "Soup")
print("\nRevised menu:")
for food in revised_foods:
print(food)
Original menu: Pizza Pasta Salad Sandwich Soup Revised menu: Pizza Sushi Sandwich Burger Soup
Question 15¶
Alien Colors: Imagine an alien was just shot down in a game. Create a variable called alien_color
and assign it a value of green, yellow,
or red
.
- Write an if statement to test whether the alien’s color is green. If it is, print a message that the player just earned 5 points.
- Write one version of this program that passes the if test and another that fails. (The version that fails will have no output.)
alien_color = "green"
if alien_color == "green":
print("Congratulations! You just earned 5 points.")
alien_color="yellow"
if alien_color== "green":
print("Congratulations! You just earned 5 points.")
Congratulations! You just earned 5 points.
Question 16¶
Stages of Life: Write an if-elif-else
chain that determines a person’s stage of life. Set a value for the variable age
, and then:
- If the person is less than 2 years old, print a message that the person is a baby.
- If the person is at least 2 years old but less than 4, print a message that the person is a toddler.
- If the person is at least 4 years old but less than 13, print a message that the person is a kid.
- If the person is at least 13 years old but less than 20, print a message that the person is a teenager.
- If the person is at least 20 years old but less than 65, print a message that the person is an adult.
age = 28
if age < 2:
print("The person is a baby.")
elif age < 4:
print("The person is a toddler.")
elif age < 13:
print("The person is a kid.")
elif age < 20:
print("The person is a teenager.")
else:
print("The person is an adult.")
The person is an adult.
Question 17¶
Favorite Fruit: Make a list of your favorite fruits, and then write a series of independent if
statements that check for certain fruits in your list.
- Make a list of your three favorite fruits and call it favorite_fruits.
- Write five if statements. Each should check whether a certain kind of fruit is in your list. If the fruit is in your list, the if block should print a statement, such as You really like bananas!
favorite_fruits = ["apple", "banana", "strawberry"]
if "apple" in favorite_fruits:
print("You really like apples!")
if "banana" in favorite_fruits:
print("You really like bananas!")
if "orange" in favorite_fruits:
print("You really like oranges!")
if "mango" in favorite_fruits:
print("You really like mangoes!")
if "strawberry" in favorite_fruits:
print("You really like strawberries!")
You really like apples! You really like bananas! You really like strawberries!
Question 18¶
Hello Admin: Make a list of five or more usernames, including the name admin
. Imagine you are writing code that will print a greeting to each user after they log in to a website. Loop through the list, and print a greeting to each user:
- If the username is 'admin', print a special greeting, such as Hello admin, would you like to see a status report?
- Otherwise, print a generic greeting, such as Hello Jaden, thank you for logging in again.
usernames = ["admin", "alice", "bob", "charlie", "david"]
for username in usernames:
if username == "admin":
print("Hello admin, would you like to see a status report?")
else:
print(f"Hello {username.title()}, thank you for logging in again.")
Hello admin, would you like to see a status report? Hello Alice, thank you for logging in again. Hello Bob, thank you for logging in again. Hello Charlie, thank you for logging in again. Hello David, thank you for logging in again.
Question 19¶
Checking Usernames: Do the following to create a program that simulates how websites ensure that everyone has a unique username.
- Make a list of five or more usernames called
current_users
. - Make another list of five usernames called
new_users
. Make sure one or two of the new usernames are also in thecurrent_users
list. - Loop through the
new_users
list to see if each new username has already been used. If it has, print a message that the person will need to enter a new username. If a username has not been used, print a message saying that the username is available. - Make sure your comparison is case insensitive. If 'John' has been used, 'JOHN' should not be accepted. (To do this, you’ll need to make a copy of
current_users
containing the lowercase versions of all existing users.)
current_users = ["Alice", "Audrey", "Charlie", "David", "Eve"]
new_users = ["Audrey", "Aiden", "Amy", "Ansel", "Alice"]
current_users_lower = [user.lower() for user in current_users]
for user in new_users:
if user.lower() in current_users_lower:
print(f"Sorry, the username '{user}' is already taken. Please enter a new username.")
else:
print(f"The username '{user}' is available.")
Sorry, the username 'Audrey' is already taken. Please enter a new username. The username 'Aiden' is available. The username 'Amy' is available. The username 'Ansel' is available. Sorry, the username 'Alice' is already taken. Please enter a new username.
Question 20¶
Ordinal Numbers: Ordinal numbers indicate their position in a list, such as 1st or 2nd. Most ordinal numbers end in th, except 1, 2, and 3.
- Store the numbers 1 through 9 in a list.
- Loop through the list.
- Use an
if-elif-else
chain inside the loop to print the proper ordinal ending for each number. Your output should read "1st 2nd 3rd 4th 5th 6th 7th 8th 9th", and each result should be on a separate line.
numbers = list(range(1, 10))
for number in numbers:
if number == 1:
ordinal = "st"
elif number == 2:
ordinal = "nd"
elif number == 3:
ordinal = "rd"
else:
ordinal = "th"
print(f"{number}{ordinal}")
1st 2nd 3rd 4th 5th 6th 7th 8th 9th