- 조건문
- 프로그램의 흐름을 제어하는 문법
- 조건문을 이용해 조건에 따라서 프로그램의 로직을 설정 가능
- 조건문은 대부분 프로그램에서 필수적으로 사용
- 변수에 값에 따라 서로 다른 로직을 수행하기
[예제]
x = 15 //x는 15
if x >= 10; // x가 10이상인 참값일 때
print("x >=10") // 코드를 출력한다
if x >= 30;
print("x >= 30" ) // x는 30 이상이 아니라 출력하지 않음
- 파이썬에서는 코드의 블록(Block)을 들여쓰기(Indent)로 지정한다.
- 탭을 사용하는 쪽과 공백(space)를 여러 번 사용하는 쪽으로 나뉨
- 파이썬 스타일 가이드라인에서는 4개의 공백 문자를 사용하는 것을 표준으로 설정한다. (space 4번)
- 조건문의 기본적인 형태는 if ~ elif ~ else 이다.
- if 는 조건을 만족하지 않으면 elif 로 들어가고 둘 다 만족하지 않을 시 else를 쓴다.
- 조건문을 사용할 때 elif 혹은 else 부분은 경우에 따라서 사용하지 않아도 된다.
- 보통 성적 구간에 따른 학점 출력 시 사용
[비교 연산자]
- 특정한 두 값을 비교할 때 이용 / 대입 연산자(=)와 같음 연산자(==)의 차이 유의
| 비교 연산자 | 설명 |
| x == y | x와 y가 서로 같을 때 참이다 |
| x != y | x와 y가 서로 다를 때 참이다 |
| x > y | x가 y보다 클 때 참이다 |
| x < y | x가 y보다 작을 때 참이다 |
| x >= y | x가 y보다 크거나 같을 때 참이다 |
| x <= y | x가 y보다 작거나 같을 때 참이다 |
[논리 연산자]
- 논리 값 (True/ False) 사이의 연산을 수행할 때 사용
| 논리 연산자 | 설명 |
| X and Y | X와 Y가 모두 참일 때 참이다 |
| X or Y | X와 Y중에 하나만 참이어도 참이다 |
| not X | X가 거짓일 때 참이다 |
[파이썬의 기타 연산자]
- 다수의 데이터를 담는 자료형을 위해 in 연산자와 not in 연산자가 제공된다.
- 리스트, 튜플, 문자열, 딕셔너리 모두에서 사용 가능
| in 연산자와 not in 연산자 | 설명 |
| x in 리스트 | 리스트 안에 x가 들어가 있을 때 참이다 |
| x not in 문자열 | 문자열 안에 x가 들어가 있지 않을 때 참이다 |
[ 파이썬의 pass 키워드]
- 아무것도 처리하고 싶지 않을 때 pass 키워드를 사용
- 예) 디버깅 과정에서 일단 조건문의 형태만 만들고 조건문을 처리하는 부분은 비워놓고 싶을 때
score = 85
if score >= 80;
pass // 나중에 작성할 소스코드
[조건문의 간소화]
- 조건문에서 실행될 소스코드가 한 줄인 경우, 굳이 줄 바꿈을 하지 않고도 간략하게 표현할 수 있다.
- 조건부 표현식은 if ~ else문을 한 줄에 작성할 수 있도록 한다.
score = 85
if score >= 80: result = "Success" // Success 화면
else: result = "Fail"
- 조건부 표현식(Conditional Expression)은 if ~ else문을 한 줄에 작성할 수 있도록 해줍니다.
score = 85
result = "Success" if score >= 80 else "Fail" // Success 화면에 나오는 값
print(result)
[파이썬 조건문 내에서의 부등식]
- 다른 프로그래밍 언어와 다르게 파이썬은 조건문 안에서 수학의 부등식을 그대로 사용할 수 있습니다.
- 예를 들어 x > 0 and x < 20 과 0 < x < 20 은 같은 결과를 반환합니다.
[코드 스타일 1] [코드 스타일2]
x = 15 x = 15
if x > 0 and x < 20; if 0 < x < 20;
print("x는 0이상 20 미만의 수입니다.") print("x는 0이상 20 미만의 수입니다.")