In Python, lists are written within square brackets .
# Define a list z = [3, 7, 4, 2]
8 Ways to Modify a Python List
- Index method
- Count method
- Sort method
- Append method
- Remove method
- Pop method
- Extend method
- Insert method
Lists store an ordered collection of items which can be of different types. The list defined above has items that are all of the same type (int), but all the items in a list do not need to be of the same type as you can see below.
# Define a list heterogenousElements = [3, True, 'Michael', 2.0]
The list contains an integer (int), a bool, a string and a float.
How to Access Values in a List
Each item in a list has an assigned index value. It’s important to note that Python is a zero indexed based language. All this means is that the first item in the list is at index 0.
# Define a list z = [3, 7, 4, 2] # Access the first item of a list at index 0 print(z)
Python also supports negative indexing. Negative indexing starts at the end. It can be more convenient at times to use negative indexing to get the last item in the list because you don’t have to know the length of the list to access the last item.
# print last item in the list print(z[-1])
As a reminder, you could also access the same item using positive indexes, as seen below.
How to Slice a List
Slices are good for getting a subset of values in your list. For the example code below, it will return a list with the items from index 0 up to and not including index 2.
# Define a list z = [3, 7, 4, 2] print(z[0:2])
# everything up to but not including index 3 print(z[:3])
The code below returns a list with items from index 1 to the end of the list
# index 1 to end of list print(z[1:])
Update an Item in a List
Lists in Python are mutable. After defining a list, it’s possible to update the individual items in a list.
# Defining a list z = [3, 7, 4, 2] # Update the item at index 1 with the string "fish" z = "fish" print(z)
Python List Modification Methods
Python lists have different methods that help you modify a list. This section of the tutorial just goes over various python list methods.
# Define a list z = [4, 1, 5, 4, 10, 4]
The index method returns the first index at which a value occurs. In the code below, it will return 0.
You can also specify where you want to start your search.
Just like how it sounds, the count method counts the number of times a value occurs in a list
random_list = [4, 1, 5, 4, 10, 4] random_list.count(5)
The sort method sorts and alters the original list in place.
z = [3, 7, 4, 2] z.sort() print(z)
The code above sorts a list from low to high. The code below shows that you can also sort a list from high to low.
# Sorting and Altering original list # high to low z.sort(reverse = True) print(z)
As an aside, I should mention that you can also sort a list of strings from “a-z” and “z-a” as you can see below.
The append method adds an element to the end of a list. This happens in place.
z = [7, 4, 3, 2] z.append(3) print(z)
The remove method removes the first occurrence of a value in a list.
z = [7, 4, 3, 2, 3] z.remove(2) print(z)
Code removes the first occurrence of the value 2 from the list z
The pop method removes an item at the index you provide. This method will also return the item you removed from the list. If you don’t provide an index, it will default to removing the item at the last index.
z = [7, 4, 3, 3] print(z.pop(1)) print(z)
This method extends a list by appending items. The benefit of this is you can add lists together.
z = [7, 3, 3] z.extend([4,5]) print(z)
Alternatively, the same thing could be accomplished by using the
print([1,2] + [3,4])
The insert method inserts an item before the index you provide.
z = [7, 3, 3, 4, 5] z.insert(4, [1, 2]) print(z)