개발 이야기/Python
Python - 11. 조건문(if)
Crazy Lazy
2021. 7. 21. 21:18
1. 조건문(if) 정의 및 특징.
- 참과 거짓을 판단하는 문장.
- 조건 판단 후 상황(case)에 맞게 처리해야 할 경우 사용.
- 조건문 다음 콜론(:)이 붙음.
- if 조건문: 형태에선 들여쓰기(indentation)를 맞춰서 해야함. (타언어에서 {} 를 쓰듯 파이썬은 들여쓰기로 구분)
- 탭 또는 공백 중 하나의 형태로 사용해야 하며, 라인(또는 공백수량)도 맞아야 함.
(즉, 공백 1칸이던 4칸이던, 탭 1칸이던 동일한 규격으로 사용해야 됨.)
a=1
# 조건문(if) 기본 구조.
if a > 1:
print('a값이')
print('1보다 크다')
## 오류 예시.
# 탭과 공백 같이 사용하여 오류
if a:
print('a값이')
print('1보다 크다')
# 공백이 맞지 않아 오류
if a:
print('a값이')
print('1보다 크다')
# 공백이 맞지 않아 오류
if a:
print('abc')
print('def')
print('ghi')
2. 비교연산자.
비교연산자 | 설명 |
x < y | x가 y보다 작다 |
x > y | x가 y보다 크다 |
x == y | x와 y가 같다 |
x != y | x와 y가 같지 않다 |
x >= y | x가 y보다 크거나 같다 |
x <= y | x가 y보다 작거나 같다 |
x=1
y=2
# 예시.
x<y # 결과 : True
x>y # 결과 : False
x==y # 결과 : False
x!=y # 결과 : True
x>=y # 결과 : False
x<=y # 결과 : True
3. 특수 연산.
특수 연산 | 설명 |
x or y | x와 y 둘중에 하나만 참이어도 참이다 |
x and y | x와 y 모두 참이어야 참이다 |
not x | x가 거짓이면 참이다 |
x in y | x가 y에 포함되면 참이다 (y는 리스트,튜플,문자열 일 수 있다.) |
x not in y | x가 y에 포함되지 않으면 참이다 (y는 리스트,튜플,문자열 일 수 있다.) |
x=1
y=-1
z=True
v=[1,2,3]
# or : 둘 중 하나의 조건이라도 만족.
if x>0 or y>0: # 결과 : x 또는 y는 양수
print('x 또는 y는 양수')
else:
print('x와 y는 음수')
# and : 두 조건 모두 만족.
if x>0 and x<2: # 결과 : x는 정수일때, x의 값은 1
print('x는 정수일때, x의 값은 1')
else:
print('x는 정수일때, x의 값은 1이 아님')
# not : 거짓은 참으로, 참은 거짓으로.
if not z: # 결과 : z는 True
print('z는 False')
else:
print('z는 True')
# in : 포함하면 참, 포함하지 않으면 거짓.
if 3 in v: # 결과 : v에 3이 포함됨.
print('v에 3이 포함됨.')
else:
print('v에 3이 포함되지 않음.')
# not in : 포함하면 거짓, 포함하지 않으면 참.
if 3 not in v: # 결과 : v에 3이 포함됨.
print('v에 3이 포함되지 않음.')
else:
print('v에 3이 포함됨.')
4. 다중 조건.
x=-1
if x==0:
print('x는 0')
elif x>0:
print('x는 0보다 큼')
else:
print('x는 0보다 작음')
5. 그 외 특수 표현.
x=1
# 일반 표현.
if x==1:
print('x는 1임')
else:
print('x는 1이 아님')
# 한 줄 표현.
if x==1: print('x는 1임')
else: print('x는 1이 아님')
# 조건부 표현.
print('x는 1임') if x==1 else print('x는 1이 아님')
# pass : 조건에 부합하지만 아무일도 발생하지 않고 싶을 때. (아래 구문 실행 시 시작과 종료만 찍힘.)
print('시작')
if x==1:
pass
else:
print('x는 1이 아님')
print('종료')