In Python, lists are one of the most versatile and widely used data structures. A list is an ordered, mutable collection that can store elements of any data type. Whether you're managing a list of names, scores, or even other lists — Python lists can handle it all.
This blog post covers everything you need to know about Python lists, from creation to manipulation, including 10 practical examples you can try yourself.
What is a List?
A list is a collection of values enclosed in square brackets []
and separated by commas. Lists can store numbers, strings, booleans, and even other lists or mixed data types.
Example 1: Creating a List
fruits = ["apple", "banana", "cherry"]
print(fruits)
This creates a list of three fruit names.
Example 2: Accessing List Elements
print(fruits[1])
Accesses the second element: "banana". Indexing starts at 0.
Example 3: Modifying List Elements
fruits[0] = "mango"
print(fruits)
Replaces "apple" with "mango". Lists are mutable, so you can update items.
Example 4: Adding Elements to a List
fruits.append("orange")
print(fruits)
append()
adds a new element at the end of the list.
Example 5: Inserting Elements at a Specific Index
fruits.insert(1, "grape")
print(fruits)
Inserts "grape" at index 1 and shifts the rest.
Example 6: Removing Elements from a List
fruits.remove("banana")
print(fruits)
Removes the first occurrence of "banana" from the list.
Example 7: Popping Elements
last_item = fruits.pop()
print("Popped:", last_item)
print(fruits)
pop()
removes and returns the last item in the list.
Example 8: Looping Through a List
for fruit in fruits:
print(fruit)
Prints each element in the list using a for
loop.
Example 9: List Slicing
numbers = [10, 20, 30, 40, 50]
print(numbers[1:4])
Prints elements from index 1 to 3: [20, 30, 40]
Example 10: List Comprehension
squares = [x**2 for x in range(5)]
print(squares)
Generates a list of squares: [0, 1, 4, 9, 16]
Common List Methods
append(item)
– Adds an item at the endinsert(index, item)
– Inserts an item at a given positionremove(item)
– Removes the first occurrence of an itempop(index)
– Removes and returns item at given index (last by default)sort()
– Sorts the list in-placereverse()
– Reverses the listclear()
– Empties the listindex(item)
– Returns the index of the first occurrencecount(item)
– Counts how many times an item appearslen(list)
– Returns the number of elements
Nested Lists
Lists can contain other lists, creating multi-dimensional data structures.
matrix = [
[1, 2, 3],
[4, 5, 6]
]
print(matrix[1][2]) # Output: 6
When to Use Lists
- When the data order matters
- When the collection needs to change (add/remove/update)
- When you want to store mixed types in one container
Final Thoughts
Lists are one of the most important and flexible data types in Python. From handling simple collections to creating complex structures like matrices or dynamic data, Python lists give you the control and simplicity you need for real-world programming tasks.
Practice creating and manipulating lists to improve your confidence. They form the foundation for many Python operations — from loops and functions to APIs and data analysis.