[파이썬] 리스트 컴프리헨션과 if 조건문

Python provides a powerful feature called list comprehensions, which allows you to create new lists based on existing lists with less code and more clarity. Along with list comprehensions, you can use if conditional statements to filter the elements of the existing list that meet a certain condition.

List Comprehensions

List comprehensions provide a concise way to create lists. They follow a simple syntax: [expression for item in list if condition]. Let’s break down this syntax:

Here’s an example that demonstrates the power of list comprehensions:

# Create a new list of squared values from an existing list
numbers = [1, 2, 3, 4, 5]
squared_numbers = [n**2 for n in numbers]
print(squared_numbers)

Output:

[1, 4, 9, 16, 25]

In this example, we square each element of the numbers list and store the result in the squared_numbers list using a list comprehension.

If Conditional Statements

To filter elements based on specific conditions, you can add an if conditional statement inside the list comprehension. This statement allows you to include or exclude elements based on a given condition.

Let’s see an example:

# Filter even numbers from a list using if condition
numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
even_numbers = [n for n in numbers if n % 2 == 0]
print(even_numbers)

Output:

[2, 4, 6, 8, 10]

In this example, only the even numbers from the numbers list are included in the even_numbers list by using the if condition inside the list comprehension.

Combining List Comprehensions and If Conditions

List comprehensions and if conditions can be combined to create even more powerful and expressive code. Here’s an example:

# Create a new list excluding negative numbers
numbers = [1, -2, 3, -4, 5, -6, 7, -8, 9, -10]
positive_numbers = [n for n in numbers if n >= 0]
print(positive_numbers)

Output:

[1, 3, 5, 7, 9]

In this example, the list comprehension is used to create a new list called positive_numbers that only includes elements greater than or equal to zero.

By combining list comprehensions and if conditional statements, you can perform complex transformations and filtering operations on lists in a concise and readable manner.

List comprehensions and if conditions are valuable tools in the Python programmer’s toolkit. They allow you to write more efficient and elegant code while still maintaining readability and clarity.