Notice
Recent Posts
Recent Comments
Link
SeouliteLab
[Python/파이썬] Comprehension 소개 및 예제 본문
파이썬의 컴프리헨션(Comprehension)은 간결하고 가독성이 좋은 코드를 작성하는 데 유용한 기능입니다. 컴프리헨션은 리스트, 세트, 딕셔너리 등의 데이터 구조를 생성하고 조작하는데 사용됩니다. 이 글에서는 리스트, 세트, 딕셔너리 컴프리헨션에 대해 알아보고 다양한 예제를 살펴보겠습니다.
1. 리스트 컴프리헨션(List Comprehension)
리스트 컴프리헨션은 반복문과 조건문을 사용하여 리스트를 생성하는 간결한 방법입니다.
numbers = [1, 2, 3, 4, 5]
squared = [x ** 2 for x in numbers]
print(squared) # [1, 4, 9, 16, 25]
2. 세트 컴프리헨션(Set Comprehension)
세트 컴프리헨션은 중복을 허용하지 않는 세트를 생성하는 방법입니다. 중괄호({})를 사용하여 세트를 생성합니다.
numbers = [1, 2, 3, 4, 5, 5]
unique_squares = {x ** 2 for x in numbers}
print(unique_squares) # {1, 4, 9, 16, 25}
3. 딕셔너리 컴프리헨션(Dictionary Comprehension)
딕셔너리 컴프리헨션은 키-값 쌍을 가지는 딕셔너리를 생성하는 방법입니다. 중괄호({})와 콜론(:)을 사용하여 딕셔너리를 생성합니다.
names = ['Alice', 'Bob', 'Charlie']
name_lengths = {name: len(name) for name in names}
print(name_lengths) # {'Alice': 5, 'Bob': 3, 'Charlie': 7}
4. 조건문과 함께 사용하기
컴프리헨션은 조건문을 포함하여 원하는 요소만을 필터링할 수 있습니다.
numbers = [1, 2, 3, 4, 5]
even_squared = [x ** 2 for x in numbers if x % 2 == 0]
print(even_squared) # [4, 16]
5. 다중 루프 사용하기
리스트 컴프리헨션에서 다중 루프를 사용하여 다차원 리스트를 생성할 수 있습니다.
matrix = [[i * j for j in range(1, 4)] for i in range(1, 4)]
print(matrix) # [[1, 2, 3], [2, 4, 6], [3, 6, 9]]
'프로그래밍' 카테고리의 다른 글
[Python/파이썬] 날짜와 시간 다루기: datetime 모듈 활용법 (0) | 2024.03.06 |
---|---|
[Python/파이썬] 프로그램 시간 지연하기: sleep() 활용법과 예제 (0) | 2024.03.06 |
[Python/파이썬]문자열을 한 글자씩 분리하여 리스트에 넣기 (0) | 2024.03.06 |
[Python/파이썬]숫자를 문자로 변환하기 (Integer to String) (0) | 2024.03.06 |
[Python/파이썬] List 정렬 방법 (0) | 2024.03.06 |