Back to: Python Programming
Python List Introduction
Suppose you have 5 cars. If you want to assign an individual name to them, you may want to use 5 different variables of string type, like:
car1 = 'Honda'
car2 = 'Toyota'
car3 = 'Chevrolet'
car4 = 'Jeep'
car5 = 'Ford'
In this case we can use a single variable to hold all these values called List. In Python square bracket [ ] is used to create a list. Our cars list will be:
cars = ['Honda', 'Toyota', 'Chevrolet', 'Jeep', 'Ford']
print(cars)
output:
['Honda', 'Toyota', 'Chevrolet', 'Jeep', 'Ford']
Note: We also can use list() constructor to make a list. Like:
Example:
cars1 = list(('Honda', 'Toyota', 'Chevrolet', 'Jeep', 'Ford'))
print(cars1)
Output :
['Honda', 'Toyota', 'Chevrolet', 'Jeep', 'Ford']
- Python List Introduction
- Accessing list elements
- Find the Index of a particular list item
- Finding the length of the list
- Looping through a list
- Changing a value in the list
- Adding a new element in a list
- Delete an element from the list
- Clearing a list
- Copying a list
- Count list elements
- Sorting a list
- Reversing a list
Accessing list elements
If we have n numbers of elements in a list, index/position of the first element will be 0 and last element will be n-1.
So, if we want to get the first car name, we can simply use cars[0] . Let us print the first car name:
cars = ['Honda', 'Toyota', 'Chevrolet', 'Jeep', 'Ford']
print(cars[0])
Output:
Honda
Print the second car name:
cars = ['Honda', 'Toyota', 'Chevrolet', 'Jeep', 'Ford']
print(cars[1])
Output:
Toyota
Print the last or 5th car name:
cars = ['Honda', 'Toyota', 'Chevrolet', 'Jeep', 'Ford']
print(cars[4])
Output:
Ford
Note: In our car list has only string type. But a List can have different types of data.
Example:
myList = [1,3,4,'Honda', 1.3, 'Jeep']
print(myList[4])
Output:
1.3
Find the Index of a particular list item
index() method is used to find the index of a particular list item.
cars1 = list(('Honda', 'Toyota', 'Chevrolet', 'Jeep', 'Ford'))
print(cars1.index('Ford'))
Output: 4
Finding the length of the list
To find the number of elements in a list or the length of the list, we can use len() method.
cars = ['Honda', 'Toyota', 'Chevrolet', 'Jeep', 'Ford']
print(len(cars))
Output:
5
Looping through a list
It’s a very common operation to loop through a list and accessing the items in it. We will learn more about looping while studying different types of looping.
Example: In this example we are going to fetch all the list elements using for loop
abcList = ['d', 'c', 'a', 'e', 'b']
for item in abcList:
print(item)
Output:
d
c
a
e
b
Changing a value in the list
If we want to change a particular element in a list, we have to use index of the element:For updating the second index value in our cars list: cars[1] = ‘Audi’
cars = ['Honda', 'Toyota', 'Chevrolet', 'Jeep', 'Ford']
cars[1] = 'Audi'
print(cars)
Output:
['Honda', 'Audi', 'Chevrolet', 'Jeep', 'Ford']
Adding a new element in a list
Adding a new element at the end of the list:
append() method is used to add/append an element at the end of the list.
cars = ['Honda', 'Toyota', 'Chevrolet', 'Jeep', 'Ford']
cars.append("BMW")
print(cars)
Output:
['Honda', 'Audi', 'Chevrolet', 'Jeep', 'Ford', 'BMW']
Adding a new element at a particular position of the list:
insert() method is used to add a new element at a particular position of the list. For inserting a new element in the 3rd position:
cars = ['Honda', 'Toyota', 'Chevrolet', 'Jeep', 'Ford']
cars.insert(2,'Mercedes-Benz')
print(cars)
Output:
['Honda', 'Audi', 'Mercedes-Benz', 'Chevrolet', 'Jeep', 'Ford', 'BMW']
Delete an element from the list
Delete a particular element from a list:
remove() method is used to delete a particular element from a list.
Example: Deleting ‘Jeep’ from our car list:
cars = ['Honda', 'Audi', 'Mercedes-Benz', 'Chevrolet', 'Jeep', 'Ford', 'BMW']
cars.remove('Jeep')
Output:
['Honda', 'Audi', 'Mercedes-Benz', 'Chevrolet', 'Ford', 'BMW']
Deleting an element from a particular index of the list:
pop() method is used to delete a particular index element from a list if we provide the index value, otherwise it will delete the last element of the list.
cars = ['Honda', 'Audi', 'Mercedes-Benz', 'Chevrolet', 'Ford', 'BMW']
cars.pop(1)
print(cars)
Output:
['Honda', 'Mercedes-Benz', 'Chevrolet', 'Ford', 'BMW']
We can also use del keyword to delete an element from a particular index:
Example:
cars = ['Honda', 'Mercedes-Benz', 'Chevrolet', 'Ford', 'BMW']
del cars[1]
print(cars)
Output:
['Honda', 'Chevrolet', 'Ford', 'BMW']
Note: del keyword is also used to delete the entire list
Example:
cars = ['Honda', 'Chevrolet', 'Ford', 'BMW']
del cars
Output:
NameError: name 'cars' is not defined
Clearing a list
To delete all the list items or make the list empty, we can use clear() method
Example:
abcList1 = ['d', 'c', 'a', 'e', 'b']
abcList1.clear()
print(abcList1)
Output:
[]
**Note: as we are able to add, change and delete elements from a list, list in python is mutable
Copying a list
we copy a list to make a new list .
copy() method to copy a list:
cars = ['Honda', 'Chevrolet', 'Ford', 'BMW']
carsNew = cars.copy()
print(carsNew)
Output:
['Honda', 'Chevrolet', 'Ford', 'BMW']
list() method to copy a list:
cars = ['Honda', 'Chevrolet', 'Ford', 'BMW']
carsNewUpdated = list(cars)
print(carsNewUpdated )
Output:
['Honda', 'Chevrolet', 'Ford', 'BMW']
Count list elements
If you want to count how many times a list element exists in the list, you can use count() function
cars1 = list(('Honda', 'Toyota', 'Chevrolet', 'Jeep', 'Ford', 'Jeep'))
print(cars1.count('Jeep'))
Output: 2
Sorting a list
We can sort the items of a list in a specific order ( Ascending or Descending).
sort() method can be used to sort the items of a list.
Example: Sort a list in ascending order
abcList = ['d', 'c', 'a', 'e', 'b']
abcList.sort()
print("After sorting: ", abcList)
Output:
After sorting: ['a', 'b', 'c', 'd', 'e']
Example : Sort a list in descending order
abcList = ['d', 'c', 'a', 'e', 'b']
abcList.sort(reverse=True)
print("After sorting in descending order: ", abcList)
Output:
After sorting in descending order: ['e', 'd', 'c', 'b', 'a']
** Here reverse=True is used to say the sort() method to perform a descending order sorting
For sorting a list, you can also use python built-in sorted() method.
Example: Sort in ascending order
abcList = ['d', 'c', 'a', 'e', 'b']
print("Sorting ascending order using sorted: ", sorted(abcList))
Output:
Sorting ascending order using sorted: ['a', 'b', 'c', 'd', 'e']
Example : Sort in descending order
abcList = ['d', 'c', 'a', 'e', 'b']
sortedList = sorted(abcList,reverse=True)
print("Sorting descending order using sorted: ", sortedList)
Output:
Sorting descending order using sorted: ['e', 'd', 'c', 'b', 'a']
Note: sorted() method does not change the structure of the main list, it perform a sort operation and returns an iterable list. In-case of sort() method, it changes the structure of the list.
Reversing a list
If you only want to reverse a list, you can use reverse() method
Example:
abcList1 = ['d', 'c', 'a', 'e', 'b']
abcList1.reverse()
print('Reversed list: ', abcList1)
Output:
Reversed list: ['b', 'e', 'a', 'c', 'd']
In summary, commonly used Python list methods are:
Function/Method | Description |
index() | find the index of a particular list item |
insert() | add a new element at a particular position of the list |
append() | add/append an element at the end of the list |
len() | find the number of elements in a list or the length of the list |
remove() | method is used to delete a particular element from a list |
pop() | method is used to delete an item from a particular index of a list if we provide the index value, otherwise it will delete the last element of the list |
copy() | we copy a list to make a new list . |
count() | counts how many times a list element exists in the list |
sort() | We can sort the items of a list in a specific order ( Ascending or Descending) |
reverse() | reverse a list |
clear() | delete all the list items or make the list empty |
See our all the courses and lessons. Also see code examples in our GitHub repository.
Follow us on social media
Author