9.10. Exercises: Lists¶
The following actions will teach you how to add, remove, modify, and rearrange list elements.
9.10.1. Part One: Adding and Removing Items¶
Part 1 starter code: repl.it.
Create a list called
adding_practice
with a single entry:273.15
. Use theappend
method to add the following elements to the list one at a time. Print the list after each step to confirm the changes.42
“hello”
Use concatenation to add these three items to the list all at once:
[False, -4.6, '87']
.append
,insert
,pop
, andremove
are used to add or remove elements from a list. Bracket notation can be used to modify any element within a list. Starting with thecargo_hold
list['oxygen tanks', 'space suits', 'parrot', 'instruction manual', 'meal packs', 'slinky', 'security blanket']
write statements to do the following:
Use bracket notation to replace
'slinky'
in the list with'space tether'
. Print the list to confirm the change.Remove the last item from the list with
pop
. Print the element removed and the updated list.Remove the first item from the list with
pop
. Print the element removed and the updated list.append
andinsert
require arguments inside the()
. Add the items1138
and'20 meters'
to the the list—the number at the start and the string at the end. Print the updated list to confirm the changes.remove
the parrot from the cargo hold, then print the updated list.Use
format()
to print the final contents of the list and its length."The list ___ contains ___ items."
9.10.2. Part Two: Slices & Methods¶
Part 2 starter code: repl.it.
Using the slice syntax
list_name[start : end]
you can either insert, replace, or remove items from a list. Review the List Slices section if you need a syntax reminder.Use slices to make the following changes to the final
cargo_hold
list from part 1. Be sure to print the list after each step to confirm your work.Insert the string
'keys'
at index 3 without replacing any other entries.Remove
'instruction manual'
from the list. (Hint: Theindex
method is helpful to avoid manually counting an index).Replace the elements at indexes 2 - 4 with the items
'cat'
,'book'
, and'string cheese'
.
Some methods—like
append
andpop
—alter the original list, while others do not. Use the listssupplies_1 = ['duct tape', 'gum', 3.14, False, 6.022e23] supplies_2 = ['orange drink', 'nerf toys', 'camera', '42', 'Rutabaga']
to see if taking a slice or using the
reverse
andsort
methods changes the original list.Print a slice of the last 3 items from
supplies_1
. Does slice alter the original list? Verify this by printingsupplies_1
after taking the slice.reverse
the first list,sort
the second, and then print both lists. What is the difference between the two methods?Do
reverse
orsort
alter the original lists?
9.10.3. Part Three: Split, List, and Join¶
Part 3 starter code: repl.it.
The
split
method converts a string into a list, while thejoin
method does the opposite.Try it! Given the string
phrase = 'In space, no one can hear you code.'
, see what happens when you printphrase.split()
vs.phrase.split('e')
vs.list(phrase)
. What is the purpose of the argument inside the()
?Given the list
my_list = ['B', 'n', 'n', 5]
, see what happens when you print''.join(my_list)
vs.'a'.join(my_list)
vs.'_'.join(my_list)
. What is the purpose of the argument inside the()
?We can take a string with delimiters (like commas) and convert it into a modifiable list. Try it! Split the string
'water,space suits,food,plasma sword,batteries'
at each comma, alphabetize the list withsort
, then combine the elements into a new string. Use a hyphen to join the elements together in the string.Do
split
,list
, orjoin
change the original string/list?
9.10.4. Part Four: Multi-dimensional Lists¶
Part 4 starter code: repl.it.
Lists can hold different data types, even other lists! A multi-dimensional list is one with entries that are also lists.
Define and assign the following lists, which hold the name, chemical symbol and mass for different elements:
element_1 = ['hydrogen', 'H', 1.008]
element_2 = ['helium', 'He', 4.003]
element_26 = ['iron', 'Fe', 55.85]
Define the list
table
, and usetable.append(list_name)
to add each of the element lists to it. Printtable
to see its structure.Use bracket notation to examine the difference between printing
table[1]
andtable[1][1]
. Don’t just nod your head! I want to HEAR you describe this difference. Go ahead, talk to your screen.Using bracket notation and the
table
list, print the mass fromelement_1
, the name fromelement_2
and the symbol fromelement_26
.table
is an example of a 2-dimensional list. The first “level” contains the element lists, and the second level holds the name/symbol/mass values.Optional: Create a 3-dimensional list and print out one entry from each level in the list.
9.10.5. Submitting Your Work¶
When finished copy the URLs to your repls for the exercises, separating each URL with a semi-colon and paste them into the submission box in Canvas for Exercises: Strings and Lists and click Submit.
You should have a total of 9 repls, 5 from String Exercises and 4 from the above List Exercises.