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.extend(iterable)
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.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"]
The extend()
method can add elements from various types of iterables, including lists, tuples, sets, and strings.
# 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]
# 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"]
# 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"]
# Create a list of characters
chars = ["a", "b", "c"]
# Extend the list with a string
chars.extend("def")
# Print the updated list
print(chars) # Output: ["a", "b", "c", "d", "e", "f"]
The extend()
method is useful in various scenarios, such as:
While the extend()
method is specifically designed to add elements from an iterable, there are other methods to add elements to a list:
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
fruits.append("cherry")
# Append an iterable as a single element
fruits.append(["orange", "grape"])
# Print the updated list
print(fruits) # Output: ["apple", "banana", "cherry", ["orange", "grape"]]
+
OperatorThe +
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]
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.