- 파이썬의 조건문 : 프로그램의 실행 흐름을 제어하기 위한 문법
- if, elif, else를 사용해 조건의 참과 거짓에 따라 다른 코드 실행 가능
- 파이썬 3.10부터는 match ~ case 문법을 활용한 구조적 패턴 매칭을 통해 값, 리스트, 딕셔너리 같은 데이터 구조를 기준으로 분기 처리 가능
1 . if, elif, else
1 - 1 . if 문
- 가장 기본적인 조건문
- 조건이 참일 경우에만 해당 블록 내의 코드 실행
- 조건은 참과 거짓으로 평가될 수 있는 표현식이어야 함
- 거짓으로 평가될 시에는 해당 코드 블록을 건너뜀
- 거짓(False)으로 평가되는 조건 : 리스트 딕셔너리 등의 값이 비어있거나, 값이 없거나, 0일 때
- 기본 값
if 조건:
코드 블록 1
else:
코드 블록 2



1, 3, 5, 7, 9 -> 남성
2, 4, 6, 8, 0 -> 여성
- 왈러스 연산자 ( := )
- 파이썬에서 값을 할당하면서 동시에 그 값을 표현식 안에서 사용할 수 있게 해주는 할당 표현식
- 조건문, 반복문, 컴프리헨션 등에서 값을 한 번 계산하면서 변수에 저장하고 바로 활용할 수 있음
-> 코드가 간결해짐

1 - 2 . elif 문
- elif => else if 줄임말
- elif는 if 없이 단독 사용 불가
- elif는 필요에 따라 여러 번 사용 가능
- else는 선택적 사용 가능, if나 elif 뒤에 사용
- 가장 처음으로 조건이 True인 코드 블록만 실행하고 바로 조건문 빠져나감
- 기본값
if 조건1:
코드 블록1
elif 조건2:
코드 블록2
elif 조건3:
코드 블록3
else:
코드 블록4



2 . if 여러 번 쓰기 vs if ~ elif ~ else 쓰기
2 - 1 . if ~ else ~ elif
- 조건을 위에서부터 검사하다가 처음 True가 나오면 그 이후는 전부 무시

2 - 2 . if 여러 번 쓰기
- 각각 독립적으로 검사
- 여러 개가 동시에 실행될 수 있음

3 . 조건부 표현식(Conditional Expression)
- 조건의 참과 거짓에 따라 값을 선택하는 한 줄짜리 조건문
- 간단한 분기 로직을 간결하게 표현할 때 유용
- 표현식 : 조건이 참인 경우 if 조건 else 조건이 거짓인 경우 값
- 조건이 복잡하거나 여러 줄의 처리가 필요한 경우 일반적인 if를 사용하는 것이 적절 -> 가독성이 떨어짐


4 . 구조적 패턴 매칭
- 파이썬에서 if ~ elif ~ else 구문을 좀 더 간결하고 읽기 쉽게 만든 새로운 분기문
- Java/C의 switch ~ case 구문과 비슷하지만 더 강력한 기능을 가짐
- if 문 -> 비교 연산(범위, T/F 등)이 들어갈 때 용이
- match 문 > 값이 맞아떨어지는 것을 찾을 때 용이
-> 무조건은 아님
- 기본값
match 값:
case 패턴1:
실행할 코드1
case 패턴2:
실행할 코드2
case _:
기본 실행 코드 (default)

- 타입이 동일해야 함

- 리스트, 튜플, 딕셔너리 -> 타입 구분 X

- case 2번의 언더스코어 (_)는 값을 사용하지 않겠다는 의미
- 리스트와 튜플은 서로 다른 타입이지만 구조적 패턴 매칭에서는 시퀀스 패턴으로 인해 비슷하게 매칭될 수 있음
- 타입을 명확히 구분해야함
-> 시퀀스 패턴 : 리스트나 튜플처럼 순서가 있는 데이터를 그 순서, 길이, 값에 맞춰 한 번에 매칭하는 기능
- 리스트, 튜플, 딕셔너리 -> 타입 구분 O

- case 뒤에 자료형 타입 종류 기재
'Python 기초' 카테고리의 다른 글
| 10 . 사용자 정의 함수 (0) | 2026.05.28 |
|---|---|
| 9 . 제어문 - 반복문 (0) | 2026.05.27 |
| 7 . 컬렉션 타입 (세트, 딕셔너리) (0) | 2026.05.26 |
| 6 . 컬렉션 타입 (리스트, 튜플) (0) | 2026.05.26 |
| 5 . 연산자 (0) | 2026.05.22 |