for문과 if문을 한번에 (List comprehension)
📌 List Comprehension
파이썬에서 리스트를 간결하게 생성하거나 변형하는 방법
반복문과 조건문을 간단하게 사용할 수 있음
new_list = [expression for item in iterable if condition]
- expression: 각 항목에 적용되는 표현식(계산 또는 변형).
- item: 반복되는(iterable) 항목들에 대한 변수.
- iterable: 순회 가능한 객체(리스트, 튜플, 문자열 등).
- condition (선택사항): 조건문으로, 해당 조건을 만족하는 경우에만 표현식이 적용됩
이중반복문일 경우, 앞에 위치한 반복문 부터 실행됨
result = [expression for outer_item in outer_iterable for inner_item in inner_iterable]
- 장점
- 간결성, 가독성 (필터링, 데이터 변형에 유용)
- 빠른 실행속도 (C언어로 구현이되어 있어 반복작업을 효율적 처리)
- 간결한 문법 (반복문, 조건문을 한번에.)
- 단점
- 복잡한 로직 표현이 어렵고, 가독성이 떨어질 수 있다.
- 제약된 표현력 (간결하지만, 상황에 따라 유연한 코딩이 어려울 수 있다.)
문제
def solutionn(mylist):
answer = [num**2 for num in mylist if num % 2 == 0]
return answer
참고