Open In App

append() and extend() in Python

Last Updated : 25 Jul, 2023
Improve
Improve
Like Article
Like
Save
Share
Report

Extend and Append are two Python list methods used to add elements to a list. Although they appear similar, they have different functionalities and use cases. Understanding the differences between the append() and extend() methods is crucial when working with lists in Python. Although both techniques are used to add elements to a list, their behaviors and effects vary. We will examine the distinctions between append() and extend(), how they are used, and when to pick one over the other in this post.

Extend vs Append Python List Methods

In Python, there are two ways to add elements to a list: extend() and append(). However, these two methods serve quite different functions. In append() we add a single element to the end of a list. In extend() we add multiple elements to a list. The supplied element is added as a single item at the end of the initial list by the append() method. When an Iterable is supplied as a parameter, the extend() method adds each element from the Iterable to the list’s end individually. It alters the initial list.

What is Append in Python?

Python’s append() function inserts a single element into an existing list. The element will be added to the end of the old list rather than being returned to a new list. Adds its argument as a single element to the end of a list. The length of the list increases by one. 

 Syntax of Python append()

Syntax:  list.append(item)
Parameters:

  • item: an item to be added at the end of the list, The parameter is mandatory and omitting it can give an error.

Returns: The method doesn’t return any value

Example 1: Here in this example, we have added an item to an existing list using Python.

Python3




my_list = ['geeks', 'for']
my_list.append('geeks')
print my_list


Output

['geeks', 'for', 'geeks']

NOTE: A list is an object. If you append another list onto a list, the parameter list will be a single object at the end of the list. 

Example 2: Here in this example, we have added another list to an existing list using Python.

Python3




my_list = ['geeks', 'for', 'geeks']
another_list = [6, 0, 4, 1]
my_list.append(another_list)
print my_list


Output

['geeks', 'for', 'geeks', [6, 0, 4, 1]]

What is extend() in Python? 

The Python’s List extend() Iterates over its argument and adding each element to the list and extending the list. The length of the list increases by a number of elements in its argument.

 Syntax of Python extend()

Syntax: list.extend(iterable)

Parameters:

  • iterable: Any iterable (list, set, tuple, etc.)

Returns: None

Example 1: Here in this example we are extending a list into a existing list using Python.

Python3




my_list = ['geeks', 'for']
another_list = [6, 0, 4, 1]
my_list.extend(another_list)
print my_list


Output

['geeks', 'for', 6, 0, 4, 1]

NOTE: A string is iterable, so if you extend a list with a string, you’ll append each character as you iterate over the string. 

Example 2: Here in this example we are extending a given item into a existing list using python.

Python3




my_list = ['geeks', 'for', 6, 0, 4, 1]
my_list.extend('geeks')
print my_list


Output

['geeks', 'for', 6, 0, 4, 1, 'g', 'e', 'e', 'k', 's']

Difference Between append() and extend() in Python

Basis for Comparison

Append()

Extend()

Purpose

To add a single entry to the end of a list, use the append() function. To add additional elements or an iterable to the end of a list, use the extend() function.

Input

accepts only one input element.

accepts as input an iterable (such as a list or tuple).

Operation

The append() function adds the full input to the list as a single item.

extend() adds each item to the list independently after iterating through each one in the input.

Efficiency

Since append() only executes one operation, it is typically quicker and more effective than extend().

When adding elements from numerous iterables or with huge inputs, extend() could take longer.

Time complexity

Append has constant time complexity i.e.,O(1)

Extend has a time complexity of O(k). Where k is the length of the list which need to be added.



Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads