List Comprehension

List comprehension is a concise way to create a new list by applying a transformation to each element of an existing list. It is a powerful tool for Python developers, as it allows for more efficient and readable code.

Here's a step-by-step guide on how to use list comprehension in Python:

Basic syntax

List comprehension follows a basic syntax that looks like this:

new_list = [expression for item in old_list]
  • new_list is the new list that will be created using the expression
  • expression is the operation or transformation that will be applied to each item in old_list
  • item is the current item in old_list

The for loop iterates through each item in old_list and applies the expression to create a new item in new_list. Let's take a look at a simple example:

numbers = [1, 2, 3, 4, 5]
squares = [x ** 2 for x in numbers]

This will output:

[1, 4, 9, 16, 25]

In this example, numbers is the old list and x ** 2 is the expression that will be applied to each item. The for loop iterates through each item in numbers, and the result of the expression is added to squares to create a new list.


List comprehension also supports conditional statements to filter items from the old list. Here's an example:

numbers = [1, 2, 3, 4, 5]
even_numbers = [x for x in numbers if x % 2 == 0]

This will output:

[2, 4]

In this example, the conditional statement if x % 2 == 0 is added to the end of the comprehension. This filters out any items in numbers that are not even, and only adds even numbers to even_numbers.

Multiple iterations and nested lists

List comprehension can also handle multiple iterations and nested lists. Here's an example:

colors = ["red", "green", "blue"]
sizes = ["small", "medium", "large"]
color_sizes = [(color, size) for color in colors for size in sizes]

This will output:

[('red', 'small'), ('red', 'medium'), ('red', 'large'), ('green', 'small'), ('green', 'medium'), ('green', 'large'), ('blue', 'small'), ('blue', 'medium'), ('blue', 'large')]

In this example, the comprehension iterates through each color in colors and each size in sizes, and creates a new tuple with each combination of color and size. The result is a list of tuples.


List comprehension is a powerful and concise way to create new lists in Python. It's a great tool for simplifying code and making it more readable. By following the basic syntax and adding conditional statements or multiple iterations, you can create complex and efficient lists with ease.