2. 논리연산자
3. 선택 구조의 확장
1. 선택 구조
(1) 선택 구조의 개념
- 특정 영역 내의 명령문에 대한 실행 여부를 판단에 따라 결정하는 구조를 의미한다.
- 실행 여부는 조건에 따라 결정이 된다. ( 파이썬에선 if문을 의미한다. )
(2) 선택 구조의 구문형식
a = 1
if a < 2 : print("success") # a < 2 : true 참이기 때문에 해당 명령문이 실행 됨.
- 들여쓰기는 코드 블록을 표현함.
- 특정 동작을 수행하는 한 라인 이상의 명령문의 집합
- 스페이스 4칸 권고(PEP-8)
- if 와 : 사이에는 논리형(boolean) 타입에 맞게 true & false로 참일 경우와 거짓일 경우에 명령문을 실행할 수 있음.
(3) 불리언식
- 비교연산자를 사용하여 결과가 불리언 타입으로 생성되는 표현식을 의미함.
- 쉽게 말해, true 와 false 참과 거짓을 나타내는 데이터 형식을 의미한다.
[1] 비교연산자

[2] 불리언 타입
- 논리값이 참(True)과 거짓(False)의 값만 표현할 수 있는 데이터 타입을 의미한다.
- True 또는 False 예약어를 사용하여 표현도 가능함.
- 비교 연산자를 사용한 표현식의 결과로 생성
2. 논리연산자
(1) 논리 연산자의 개념
- 참, 거짓을 구별할 수 있는 명제를 대상으로 명제의 집합을 위해 고안한 연산자를 의미한다.
- 쉽개 말해, 두 개의 논리값(불리언식)을 연산하여 참 또는 거짓을 결과로 얻는 연산자를 말한다.
- 두 개의 피연산자를 갖는 이항 연산자
- 파이썬에서는 and(논리곱), or(논리합), not(논리부정) 연산자를 이용한다.
[1] and 연산자
- 두 논리값이 모두 True 일 때 True이고, 어느 하나 False 일 경우 False를 반환한다.
[2] or 연산자
- 두 논리값 중 어느 하나라도 True 일 경우 True이고, 논리값 모두 False 일 경우에만 False를 반환한다.
[3] not 연산자
- 단항 연산자로 논리값을 반전하여 False는 True로, True는 False로 반환을 해준다.
(2) 단락평가
- 첫 번째 논리값 만으로 전체 연산 결과가 판별 가능할 때 두 번째 논리값은 확인(평가)하지 않는 기법을 의미한다.
- and 연산자에서 앞이 False이면 and 뒤는 볼 필요도 없음
- or 연산자에서 앞이 True이면 or 뒤는 볼 필요도 없음
- 이러한 과정의 생략으로 프로그램의 속도를 높일 수 있음.
3. 선택 구조의 확장
(1) fi 예약어
- if 예약어는 코드의 조건을 넣기 위한 파이썬에서 제공을 해주는 키워드이다.
- if 뒤에 불리언 타입의 데이터에 따라 명령문이 실행되거나 실행되지 않게 만들 수 있음.
a = 1
if a < 2: # 결과는 true
print("success") # true 참이기 때문에 해당 명령문이 실행 됨.
(2) else 예약어 - 이분 선택 구조의 구문형식
- else 예약어는 if를 통해 첫 번째 명령이 실행되지 않을 경우 반드시 실행이 되어야 할 명령문을 넣을 수 있다.
a = 3
if a < 2: # false 결과
print("success")
else:
print("failure") # 해당 구문이 실행됨 2보다 3이 크기 때문에
(3) elif 예약어 - 다분 선택 구조의 구문형식
- elif 예약어는 조건을 여러 개 주기 위해서 사용하는 키워드 이다. ( else if 의 약자임 )
a = 100
if a < 2: # true 경우 아래 명령문 실행
print("success")
elif a < 3: # true 경우 아래 명령문 실행
print("success")
elif a < 99: # true 경우 아래 명령문 실행
print("success")
else : # 모두가 아니라면 else 명령문 실행
print("failure")
- 예시 코드를 보면, if 에서 true가 아닌 경우 다음 elif 를 실행하며, elif 조건문이 false라면 계속해서 다음으로 넘어가게 된다.
'⚡Python' 카테고리의 다른 글
[Python] 파이썬 인터프리터(Interperter) 쉽게 이해하기 (1) | 2025.04.17 |
---|---|
[Python] 7강 - 반복 구조 (0) | 2025.04.17 |
[Python] 5강 - 순차 구조 및 제어 구조 (0) | 2025.04.15 |
[Python] 4강 - 파이썬 시작하기 (0) | 2025.04.14 |
[Python] 개인 컴퓨터에서 파이썬 설치 및 VS Code로 실행하기 (0) | 2025.04.11 |