VOOZH about

URL: https://www.geeksforgeeks.org/python/difference-between-list-comprehension-and-lambda-in-python/

⇱ List comprehension and Lambda Function in Python - GeeksforGeeks


  • Courses
  • Tutorials
  • Interview Prep

List comprehension and Lambda Function in Python

Last Updated : 15 Jul, 2025

List comprehension is an elegant way to define and create a list in Python. We can create lists just like mathematical statements and in one line only. The syntax of list comprehension is easier to grasp. 

A list comprehension generally consists of these parts :

  • Output expression,
  • Input sequence,
  • A variable representing a member of the input sequence and
  • An optional predicate part.

Syntax of list comprehension

List = [expression(i) for i in another_list if filter(i)]

Example:

Output:

[1, 9, 25, 49, 81]

In the above example,

  • x ** 2 is the expression.
  • range (1, 11) is an input sequence or another list.
  • x is the variable.
  • if x % 2 == 1 is predicate part.

Lambda Function in Python

In Python, an anonymous function means that a function is without a name. As we already know the def keyword is used to define the normal functions and the lambda keyword is used to create anonymous functions. It has the following syntax: 

Syntax of lambda

lambda arguments : expression

Example:

Output:

[1, 4, 9, 16]

Lambda and List Comprehension - Difference

List Comprehension is used to create lists, Lambda is function that can process like other functions and thus return values or lists. 

Example: 

Output:

[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
[0, 2, 4, 6, 8, 10, 12, 14, 16, 18]
[0, 2, 4, 6, 8, 10, 12, 14, 16, 18]

List comprehension vs Lambda function - Performance

As we can see from the graph that overall list comprehension is much faster than the filter function. The filter is faster for a small list only.

Output:

👁 Image
Comment