extend() – Add all List Entries to another List


The extend() method in Python is a built-in list method used to add all the elements from an iterable (such as a list, tuple, or string) to the end of the list. This method modifies the original list in place and can be useful for combining lists or adding multiple elements to a list in a single operation.


The syntax for the extend() method is straightforward:

  • list: The name of the list to which you want to add elements.
  • iterable: An iterable (e.g., another list, tuple, set, or string) whose elements you want to add to the list.

Basic Usage

Using the extend() method, you can add multiple elements to the end of a list. Here is an example:

# Create a list with some elements
fruits = ["apple", "banana", "cherry"]

# Extend the list with another list
fruits.extend(["orange", "grape", "mango"])

# Print the updated list
print(fruits)  # Output: ["apple", "banana", "cherry", "orange", "grape", "mango"]

Extending with Different Iterables

The extend() method can add elements from various types of iterables, including lists, tuples, sets, and strings.

Extending with a List

# Create a list of numbers
numbers = [1, 2, 3]

# Extend the list with another list of numbers
numbers.extend([4, 5, 6])

# Print the updated list
print(numbers)  # Output: [1, 2, 3, 4, 5, 6]

Extending with a Tuple

# Create a list of letters
letters = ["a", "b", "c"]

# Extend the list with a tuple of letters
letters.extend(("d", "e", "f"))

# Print the updated list
print(letters)  # Output: ["a", "b", "c", "d", "e", "f"]

Extending with a Set

# Create a list of colors
colors = ["red", "blue", "green"]

# Extend the list with a set of colors
colors.extend({"yellow", "purple"})

# Print the updated list
print(colors)  # Output: ["red", "blue", "green", "yellow", "purple"]

Extending with a String

# Create a list of characters
chars = ["a", "b", "c"]

# Extend the list with a string

# Print the updated list
print(chars)  # Output: ["a", "b", "c", "d", "e", "f"]

Practical Applications

The extend() method is useful in various scenarios, such as:

  • Combining Lists: Merging two or more lists into a single list.
  • Adding Multiple Elements: Efficiently adding multiple elements from an iterable to a list.
  • Data Processing: Aggregating data from different sources into a single list for analysis or processing.

Comparison with Other Methods

While the extend() method is specifically designed to add elements from an iterable, there are other methods to add elements to a list:

Using append()

The append() method adds a single element to the end of a list. To add multiple elements, you would need to call append() multiple times, or append the iterable as a single element, which is not the same as extending the list.

# Create a list
fruits = ["apple", "banana"]

# Append a single element

# Append an iterable as a single element
fruits.append(["orange", "grape"])

# Print the updated list
print(fruits)  # Output: ["apple", "banana", "cherry", ["orange", "grape"]]

Using the + Operator

The + operator can be used to concatenate lists, but it creates a new list rather than modifying the original list in place.

# Create two lists
list1 = [1, 2, 3]
list2 = [4, 5, 6]

# Concatenate lists using the + operator
combined_list = list1 + list2

# Print the new list
print(combined_list)  # Output: [1, 2, 3, 4, 5, 6]

# Print the original lists
print(list1)  # Output: [1, 2, 3]
print(list2)  # Output: [4, 5, 6]

Performance Considerations

The extend() method is generally efficient, with a time complexity of O(k), where k is the number of elements in the iterable being added. This is because the method iterates over the iterable and appends each element to the list. For large iterables, the operation is performed quickly and efficiently by Python’s list implementation.