Last modified: May 30, 2026
Python Add Item to List: Easy Guide
Adding items to a list is a fundamental skill in Python. Lists are flexible. You can add one item or many. You can add at the end or in the middle. This guide shows you the main methods. We use simple examples. You can follow along easily.
Why Add Items to a List?
Lists store data. You collect user input. You process files. You build dynamic data. Adding items helps you grow the list. Python gives you three main tools: append, insert, and extend. Each works differently. Choose the right one for your task.
Method 1: Using append()
The append method adds one item to the end. It is the most common way. It changes the original list. It does not return a new list. Use it when you want to add a single element.
Example:
# Create a list of fruits
fruits = ["apple", "banana"]
# Add one fruit at the end
fruits.append("cherry")
print(fruits)
Output:
['apple', 'banana', 'cherry']
The new item goes to the last position. The list length increases by one. This method is fast. It works in constant time. For more details, see our guide on Python List Append to End.
Method 2: Using insert()
The insert method adds an item at a specific position. You give two arguments: the index and the item. The index is where you want the new item. All items after that index shift right.
Example:
# Create a list of numbers
numbers = [10, 20, 30, 40]
# Insert 25 at index 2 (third position)
numbers.insert(2, 25)
print(numbers)
Output:
[10, 20, 25, 30, 40]
Use insert when you need control over the position. For example, add to the beginning with index 0. Or add near the end with a large index. Learn more about positioning in Python List Insert Syntax Guide.
Method 3: Using extend()
The extend method adds multiple items at once. You give it an iterable, like another list. It adds each element from that iterable to the end. It does not add the iterable itself. It flattens it.
Example:
# Create a list of colors
colors = ["red", "green"]
# Add two more colors using another list
colors.extend(["blue", "yellow"])
print(colors)
Output:
['red', 'green', 'blue', 'yellow']
This is efficient for adding many items. It avoids multiple append calls. Use extend when you have a collection to merge.
Method 4: Using the + Operator
You can also use the + operator. It creates a new list. It does not change the original. You combine two lists into one. This is a quick way to add multiple items.
Example:
# Original list
a = [1, 2, 3]
# Add items using +
b = a + [4, 5]
print(a) # Original unchanged
print(b) # New list
Output:
[1, 2, 3]
[1, 2, 3, 4, 5]
This method is clear and readable. It is good for small lists. But it creates a copy. For large lists, extend is faster because it modifies in place.
Method 5: Using List Slicing
You can add items using slice assignment. This replaces a slice with new items. It can also insert items. Use it when you need advanced control.
Example:
# Create a list
data = ["x", "y", "z"]
# Insert two items at position 1 using slice
data[1:1] = ["a", "b"]
print(data)
Output:
['x', 'a', 'b', 'y', 'z']
Slice assignment is powerful. It can replace or insert. But it is less common. Beginners usually prefer append or insert.
Common Mistakes
Beginners often confuse append and extend. append adds one item. extend adds each element from an iterable. Another mistake is forgetting that insert shifts items. This can cause unexpected order. Always test your code.
Another error is using + on a list with a non-list. Python raises a TypeError. Make sure both sides are lists.
Performance Tips
Adding items is fast. append is O(1) on average. insert at the beginning is O(n) because all items shift. extend is O(k) where k is the number of new items. For big data, choose wisely. Use append for single items. Use extend for many items.
If you need to check the length of your list before adding, see Python List Length Check with If.
Conclusion
Adding items to a Python list is easy. Use append for one item at the end. Use insert for a specific position. Use extend for multiple items from another list. The + operator creates a new list. Slice assignment offers advanced control. Each method has its use. Practice with examples. You will master lists quickly. Happy coding!