Skip to content

Instantly share code, notes, and snippets.

@IvanFrecia
Created May 4, 2021 20:59
Show Gist options
  • Save IvanFrecia/dfeb78f206f050d42ae960054ad6f434 to your computer and use it in GitHub Desktop.
Save IvanFrecia/dfeb78f206f050d42ae960054ad6f434 to your computer and use it in GitHub Desktop.
Course 3 - Data Collection and Processing with Python - Week 2 - course_3_assesment_2
# 1) Write code to assign to the variable map_testing all the elements in lst_check while adding the string “Fruit: ”
# to the beginning of each element using mapping.
lst_check = ['plums', 'watermelon', 'kiwi', 'strawberries', 'blueberries', 'peaches', 'apples', 'mangos', 'papaya']
map_testing = map(lambda str: "Fruit: " + str, lst_check)
print(map_testing)
# Ouput: ['Fruit: plums', 'Fruit: watermelon', 'Fruit: kiwi', 'Fruit: strawberries', 'Fruit: blueberries', 'Fruit: peaches', 'Fruit: apples', 'Fruit: mangos', 'Fruit: papaya']
# 2) Below, we have provided a list of strings called countries. Use filter to produce a list called
# b_countries that only contains the strings from countries that begin with B.
countries = ['Canada', 'Mexico', 'Brazil', 'Chile', 'Denmark', 'Botswana', 'Spain', 'Britain', 'Portugal', 'Russia', 'Thailand', 'Bangladesh', 'Nigeria', 'Argentina', 'Belarus', 'Laos', 'Australia', 'Panama', 'Egypt', 'Morocco', 'Switzerland', 'Belgium']
b_countries = filter(lambda x: 'B' in x, countries)
print(b_countries)
# Output: ['Brazil', 'Botswana', 'Britain', 'Bangladesh', 'Belarus', 'Belgium']
# 3) Below, we have provided a list of tuples that contain the names of Game of Thrones characters.
# Using list comprehension, create a list of strings called first_names that contains only the first names
# of everyone in the original list.
people = [('Snow', 'Jon'), ('Lannister', 'Cersei'), ('Stark', 'Arya'), ('Stark', 'Robb'), ('Lannister', 'Jamie'), ('Targaryen', 'Daenerys'), ('Stark', 'Sansa'), ('Tyrell', 'Margaery'), ('Stark', 'Eddard'), ('Lannister', 'Tyrion'), ('Baratheon', 'Joffrey'), ('Bolton', 'Ramsey'), ('Baelish', 'Peter')]
first_names = [name[1] for name in people]
print(first_names)
# Output: ['Jon', 'Cersei', 'Arya', 'Robb', 'Jamie', 'Daenerys', 'Sansa', 'Margaery', 'Eddard', 'Tyrion', 'Joffrey', 'Ramsey', 'Peter']
# 4) Use list comprehension to create a list called lst2 that doubles each element in the list, lst.
lst = [["hi", "bye"], "hello", "goodbye", [9, 2], 4]
lst2 = [element + element for element in lst]
print(lst2)
# Output: [['hi', 'bye', 'hi', 'bye'], 'hellohello', 'goodbyegoodbye', [9, 2, 9, 2], 8]
# 5) Below, we have provided a list of tuples that contain students’ names and their final grades in PYTHON 101.
# Using list comprehension, create a new list passed that contains the names of students who passed the class
# (had a final grade of 70 or greater).
students = [('Tommy', 95), ('Linda', 63), ('Carl', 70), ('Bob', 100), ('Raymond', 50), ('Sue', 75)]
passed = [name[0] for name in students if name[1] >= 70]
print(passed)
# Output: ['Tommy', 'Carl', 'Bob', 'Sue']
# 6) Write code using zip and filter so that these lists (l1 and l2) are combined into one big list
# and assigned to the variable opposites if they are both longer than 3 characters each.
l1 = ['left', 'up', 'front']
l2 = ['right', 'down', 'back']
l3 = zip(l1, l2)
opposites = list(filter(lambda arg: len(arg[0]) > 3 and len(arg[1]) > 3, l3))
print(opposites)
# Output: [('left', 'right'), ('front', 'back')]
# 7) Below, we have provided a species list and a population list. Use zip to combine these lists into
# one list of tuples called pop_info. From this list, create a new list called endangered that contains
# the names of species whose populations are below 2500.
species = ['golden retriever', 'white tailed deer', 'black rhino', 'brown squirrel', 'field mouse', 'orangutan', 'sumatran elephant', 'rainbow trout', 'black bear', 'blue whale', 'water moccasin', 'giant panda', 'green turtle', 'blue jay', 'japanese beetle']
population = [10000, 90000, 1000, 2000000, 500000, 500, 1200, 8000, 12000, 2300, 7500, 100, 1800, 9500, 125000]
pop_info = list(zip(species, population))
endangered = [x for (x, x1) in pop_info if x1 < 2500]
print(endangered)
# Output: ['black rhino', 'orangutan', 'sumatran elephant', 'blue whale', 'giant panda', 'green turtle']
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment