티스토리 뷰

728x90
반응형

안녕하세요! 오늘은 파이썬의 유용한 기능인 List Comprehension와 Dictionary Comprehension에 대해 알아보겠습니다. 이 두 가지 기능은 코드를 간결하고 읽기 쉽게 만들어 주며, 초심자도 쉽게 활용할 수 있습니다. 그럼 시작해볼까요?

 

1. List Comprehension 이란?

List Comprehension( 리스트 내포)는 기존 리스트를 기반으로 새로운 리스트를 만드는 간단한 방법입니다. 일반적인 반복문을 사용하는 것보다 더 간결하게 작성할 수 있습니다.

1.1. 기본 문법

List Comprehension 의 기본 문법은 다음과 같습니다:

python

new_list = [expression for item in iterable if condition]
  • expression: 생성할 리스트의 요소를 정의합니다.
  • item: 반복할 때 사용할 변수입니다.
  • iterable: 반복할 수 있는 객체(예: 리스트, 튜플 등)입니다.
  • condition: (선택적) 요소를 포함할지 결정하는 조건입니다.

( 출처 : https://dataalgo.medium.com/python-list-comprehension-a-powerful-tool-for-simplifying-your-code-a65e83ea3bc6)

 

1.2. 예제

예를 들어, 1부터 10까지의 숫자에서 짝수만 포함하는 리스트를 만들어보겠습니다.

python

# 일반적인 방법
even_numbers = []
for i in range(1, 11):
    if i % 2 == 0:
        even_numbers.append(i)

print(even_numbers)  # 출력: [2, 4, 6, 8, 10]

# 리스트 내포 사용
even_numbers = [i for i in range(1, 11) if i % 2 == 0]
print(even_numbers)  # 출력: [2, 4, 6, 8, 10]

위의 예에서 보듯이, 리스트 내포를 사용하면 훨씬 간결하게 코드를 작성할 수 있습니다.

2. Dictionary Comprehension 란?

Dictionary Comprehension(딕셔너리 내포)는 딕셔너리를 생성하는 간단한 방법입니다. 리스트 내포와 비슷하지만, 키-값 쌍을 만드는 데 사용됩니다.

2.1. 기본 문법

딕셔너리 내포의 기본 문법은 다음과 같습니다:

python

new_dict = {key_expression: value_expression for item in iterable if condition}
  • key_expression: 생성할 딕셔너리의 키를 정의합니다.
  • value_expression: 생성할 딕셔너리의 값을 정의합니다.

2.2. 예제

예를 들어, 1부터 5까지의 숫자를 키로 하고 그 제곱을 값으로 하는 딕셔너리를 만들어보겠습니다.

python

# 일반적인 방법
squares = {}
for i in range(1, 6):
    squares[i] = i ** 2

print(squares)  # 출력: {1: 1, 2: 4, 3: 9, 4: 16, 5: 25}

# 딕셔너리 내포 사용
squares = {i: i ** 2 for i in range(1, 6)}
print(squares)  # 출력: {1: 1, 2: 4, 3: 9, 4: 16, 5: 25}

딕셔너리 내포를 사용하면 더 간단하게 딕셔너리를 생성할 수 있습니다.

3. 요약

리스트 내포와 딕셔너리 내포는 파이썬에서 코드를 더욱 간결하고 효율적으로 작성할 수 있게 해주는 강력한 도구입니다. 반복문을 사용하여 리스트나 딕셔너리를 만드는 것보다 훨씬 빠르고 쉽게 코드를 작성할 수 있습니다.

초심자 여러분도 이 두 가지 기능을 활용하여 코드의 가독성을 높여보세요! 궁금한 점이 있다면 댓글로 남겨주세요. 행복한 코딩 되세요! 😊

728x90
반응형