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: 2025-01-02 11:26:04.147015
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?”
name = input("what is your name = ")
# except EOFError:
print (f"Hello {name}, would you like to learn some Python today?")
Hello fio, would you like to learn some 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.
name = input("what is your name = ")
print (f"Hello {name.lower()}, would you like to learn some Python today?")
print (f"Hello {name.upper()}, would you like to learn some Python today?")
print (f"Hello {name.title()}, would you like to learn some Python today?")
Hello ferdinan aurifio, would you like to learn some Python today? Hello FERDINAN AURIFIO, would you like to learn some Python today? Hello Ferdinan Aurifio, would you like to learn some Python today?
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.”
name = "mother teresa"
print (f'{name.title()} once said, "Spread love everywhere you go. Let no one ever come to you without leaving happier"')
Mother Teresa once said, "Spread love everywhere you go. Let no one ever come to you without leaving happier"
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 Ferdinan Aurifio \n"
# Print the name with the whitespace around it
print("Original name with whitespace:")
print(f"'{name}'")
# Use lstrip() to remove whitespace from the left
print("\nName after lstrip():")
print(f"'{name.lstrip()}'")
# Use rstrip() to remove whitespace from the right
print("\nName after rstrip():")
print(f"'{name.rstrip()}'")
# Use strip() to remove whitespace from both sides
print("\nName after strip():")
print(f"'{name.strip()}'")
Original name with whitespace: ' Ferdinan Aurifio ' Name after lstrip(): 'Ferdinan Aurifio ' Name after rstrip(): ' Ferdinan Aurifio' Name after strip(): 'Ferdinan Aurifio'
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 = ["fio", "via", "jhon", "david", "gaby"]
for name in names:
print (name)
fio via jhon david gaby
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.”
motorcycles = ["Honda", "Yamaha", "Ducati", "BMW"]
for motorcycle in motorcycles:
print (f"I would like to own a {motorcycle} motorcycle")
I would like to own a Honda motorcycle I would like to own a Yamaha motorcycle I would like to own a Ducati motorcycle I would like to own a BMW motorcycle
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.
pizzas = ["Margherita Pizza", "Pepperoni Pizza", "BBQ Chicken Pizza"]
for pizza in pizzas:
print (f'I like {pizza} pizza.')
I like Margherita Pizza pizza. I like Pepperoni Pizza pizza. I like BBQ Chicken Pizza 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!
print ("I really love pizza!")
I really love 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", "Cat", "Fish"]
for animal in animals:
print (f"A {animal} would make a great pet.")
A Dog would make a great pet. A Cat would make a great pet. A Fish would make a great pet. Any of these animals would make a great
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!
print ("Any of these animals would make a great")
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.
# Create a list of numbers from 1 to 100
numbers = list(range(1, 101))
# Verify the minimum value
print(f"Minimum value: {min(numbers)}") # Should print 1
# Verify the maximum value
print(f"Maximum value: {max(numbers)}") # Should print 100
# Calculate the sum of the numbers
print(f"Sum of numbers: {sum(numbers)}") # Should print 5050
Minimum value: 1 Maximum value: 100 Sum of numbers: 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.
# Create a list of numbers from 1 to 100
numbers = list(range(1, 21, 2))
for number in 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.
# Use a for loop with modulo to find multiples of 3
multiples_of_three = []
for number in range(3, 31):
if number % 3 == 0: # Check if the number is divisible by 3
multiples_of_three.append(number)
# Print each multiple of 3
for number in multiples_of_three:
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.
# Generate a list of the first 10 cubes using list comprehension
cubes = [x**3 for x in range(1, 11)]
# Print the list of cubes
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.
# Generate a list of the first 10 cubes using list comprehension
cubes = [x**3 for x in range(1, 11)]
# Print the entire list of cubes
print("The list of cubes:")
print(cubes)
print (len (cubes))
# Print the first three items in the list using a slice
print("\nThe first three items in the list are:")
print(cubes[:3])
The list of cubes: [1, 8, 27, 64, 125, 216, 343, 512, 729, 1000] 10 The first three items in the list are: [1, 8, 27]
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 the first three items three items from the middle of the list.
print("\nThe first three items in the list are:")
print(cubes[3:6])
The first three items in the list are: [64, 125, 216]
Print the message The last three items in the list are:. Use a slice to print the last three items in the list.
# Print the last three items three items from the middle of the list.
print("\nThe first three items in the list are:")
print(cubes[7:])
The first three items in the list are: [512, 729, 1000]
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.
# Define a tuple with five basic foods
foods = ("Pizza", "Pasta", "Salad", "Soup", "Burger")
# Use a for loop to print each food
print("The buffet-style restaurant offers the following foods:")
for food in foods:
print(food)
The buffet-style restaurant offers the following foods: Pizza Pasta Salad Soup Burger
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.
# ReDefine a tuple with five basic foods
foods = ("Pizza", "Sushi", "Salad", "Ramen", "Burger")
# Use a for loop to print each food
print("The buffet-style restaurant offers the following foods:")
for food in foods:
print (food)
The buffet-style restaurant offers the following foods: Pizza Sushi Salad Ramen Burger
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", "yellow", "red"]
if "green" in alien_color:
print ("the player just earned 5 points.")
the player just earned 5 points.
alien_color = ["green", "yellow", "red"]
if "black" in alien_color:
print ("the player 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 = 1
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 a baby
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!
#List of fruit
favorite_fruits = ["apple","mango","pear"]
if "mango" in favorite_fruits:
print("You really like mangoes!")
if "strawberry" in favorite_fruits:
print("You really like strawberries!")
if "banana" in favorite_fruits:
print("You really like bananas!")
if "apple" in favorite_fruits:
print("You really like apples!")
if "pineapple" in favorite_fruits:
print("You really like pineapples!")
You really like mangoes! You really like apples!
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.
# List of usernames
usernames = ["admin", "Jaden", "Sophia", "Michael", "Emily"]
# Loop through the list and print a greeting for each user
for username in usernames:
if username == "admin":
print("Hello admin, would you like to see a status report?")
else:
print(f"Hello {username}, thank you for logging in again.")
Hello admin, would you like to see a status report? Hello Jaden, thank you for logging in again. Hello Sophia, thank you for logging in again. Hello Michael, thank you for logging in again. Hello Emily, 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.)
# List of current users (with some usernames repeated from current_users)
current_users = ["admin", "Jaden", "Sophia", "Michael", "Emily"]
# lowercase versions
lowercase_users = []
for user in current_users:
lowercase_users.append(user.lower())
print (lowercase_users)
# List of new users (with some usernames repeated from current_users)
new_users = ["Sophia", "Liam", "Michael", "Ava", "Oliver"]
# Loop through the new users to check if the username is available
for new_user in new_users:
if new_user.lower() in lowercase_users:
print(f"The username '{new_user}' is already taken, please choose a different one.")
else:
print(f"The username '{new_user}' is available.")
['admin', 'jaden', 'sophia', 'michael', 'emily'] The username 'Sophia' is already taken, please choose a different one. The username 'Liam' is available. The username 'Michael' is already taken, please choose a different one. The username 'Ava' is available. The username 'Oliver' is available.
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))
print (numbers)
for number in numbers:
if number == 1:
print ("1st")
elif number == 2:
print ("2nd")
elif number == 3:
print ("3rd")
else:
print (str(number)+"th")
[1, 2, 3, 4, 5, 6, 7, 8, 9] 1st 2nd 3rd 4th 5th 6th 7th 8th 9th