Python/중급/Lesson 09
리스트 컴프리헨션
30분·theory
이 챕터
1/8
Python
2. 조건 추가 —
리스트 컴프리헨션
🎯 이 lesson 을 읽고 나면
이 lesson 을 다 읽고 나면 아래 3가지를 자신 있게 할 수 있습니다.
- ▸✅ 리스트 슬라이싱 + 컴프리헨션
- ▸✅ list vs tuple 선택 + 깊은 복사 (copy.deepcopy)
- ▸✅ sort vs sorted (원본 변경 여부)
학습 목표를 체크리스트로 두고 다 답할 수 있게 되면 lesson 을 닫으세요.
list comprehension 6가지 — 코드 + 실행 결과
[표현식 for 변수 in 반복가능 if 조건] — 리스트를 만드는 한 줄 문법. Python 의 정체성.
1. 가장 단순한 형태
같은 결과, 한 줄. 읽기 더 쉬워짐 (변수 → 변환 → 출처 순).
2. 조건 추가 — if
if 는 필터. 표현식을 거치기 전에 통과 여부 결정.
3. 변환 — 문자열·dict 응용
4. dict / set comprehension
5. 중첩 (이중 for) — 신중히
⚠️ 3중 이상 중첩은 읽기 어려움 — 일반 for 문이 더 명확.
6. 안 좋은 예 — comprehension 남용
규칙: 이중 for + 조건 2개 이상이면 일반 for.
한 줄 요약
핵심: 간단할 때만 사용. 3 줄 넘으면 일반 for.
🐍 실행해보기 — 리스트 컴프리헨션
위 개념을 실제로 코드로 실행해보세요. 값을 바꿔가며 어떻게 동작하는지 직접 확인하는 게 가장 빠른 학습.
✏️ Python 코드
📟 콘솔 출력
▶ 실행 버튼을 눌러보세요
🐍 Pyodide로 실제 Python 실행 — 첫 실행 시 로딩 3~5초 소요
🤖 AI 에게 이렇게 요청해보세요
이 lesson 의 개념을 알면 AI 에게 구체적으로 지시할 수 있습니다. 막연한 "고쳐줘" 가 아니라 어휘를 가진 요청 — 그게 토큰 절약의 출발점입니다.
- ▸"이 for + append 를 리스트 컴프리헨션으로 바꿔줘"
- ▸"이 코드의 깊은 복사 (copy.deepcopy) 필요성 점검해줘"
왜 이게 토큰을 줄이나
개념을 모를 땐 AI 답변을 받고도 "그게 뭐예요?" 를 다시 물어야 합니다. 그 "다시 물음" 이 토큰을 잡아먹습니다. 개념 한 번 익혀두면 대화가 한 번에 끝납니다.
먼저 읽으면 좋은 개념: set — 중복 없는 집합
다음 추천: 람다 함수