안녕하세요 엘빈입니다. 이제까지 포스팅에서 파이썬의 기본 이론과 자료형에 대해서 다루었는데요. 이번 포스팅부터 본격적으로 파이썬 문법을 배운다고 할 수 있습니다. 파이썬을 통한 개발을 위해서 프로그램의 구조를 세워야 하는데요. 이번 포스팅에서는 제어문 중 if 문에 대해서 알아보겠습니다.
if문 기본 사용법
프로그래밍에서 조건문은 매우 중요합니다. 상황에 맞게 처리해야 하는 경우가 많기 때문이죠. 조건문 중 가장 대표적으로 사용되는 것이 바로 if 문입니다. If 문은 파이썬 뿐만 아니라 대부분 프로그래밍 언어에서 사용되죠.
If 조건문:
수행 구문
Elif 조건문:
수행 구문
Else:
수행 구문
If문을 사용하는 방법은 간단합니다. 변수 n이 5 이상일 때 구문을 시행하고 싶다면 다음과 같이 작성합니다.
n = 4
if n >5:
print("n이 5보다 큽니다.")
간단하죠? If 문 뒤에 조건문을 작성합니다. 그리고 조건문이 끝나는 지점에 꼭 기호 ":"를 작성해줍니다. 중요한 것은 조건을 만족하면 실행할 구문은 들여쓰기가 꼭 필요하다는 것입니다. 참고로 파이썬은 범위를 지정하는 중괄호가 없는 대신 기호 ":"와 들여쓰기를 통해 구분합니다.
위의 코드 if 문 조건은 n이 5보다 클 때입니다. 하지만 n의 값은 4 이므로 조건문 안의 구문은 실행되지 않습니다. 하지만 개발자는 n이 5보다 크지 않을 경우에 값이 오류라는 사실을 알리고 싶습니다. 이럴 경우 else 구문을 사용합니다.
n = 4
if n >5:
print("number is bigger than 5")
else:
print("number error") # number error
Else 구문은 if문 조건을 만족하지 않는 다른 모든 경우일 때 실행됩니다. 개발자는 n>5일 경우 뿐만 아니라 정확히 5일 경우에도 알려주고 싶습니다. 이렬 경우 elif 문을 활용합니다.
n = 5
if n >5:
print("number is bigger than 5")
elif n==5:
print("number is 5")
else:
print("number error") # 5
Elif 문을 통해 기본 조건 외에 다양한 조건문을 설정할 수 있습니다. Elif는 작성 개수에 제한이 없으므로 한 제어문안에 수많은 조건을 추가할 수 있습니다.
elif n==5:
pass
만약 n이 5일때 아무런 구문도 실행하고 싶지 않은 경우는 어떻게 할까요? 이 때는 pass 구문을 사용하면 됩니다. Pass는 구문을 실행하지 않고 다음 구문으로 넘어가는 기능을 가지고 있습니다.
조건 판단
조건 판단은 무조건 True,False 둘중에 하나를 반환합니다. True일 경우에 조건 구문을 실행하며 False일 때 else 구문 혹은 다른 조건문을 검사하게 되는 것이죠. 조건을 판단하는데 다양한 연산자가 활용됩니다. 연산자 종류는 다음과 같습니다.
(1) 부등호 : <,<=,>=,>
기준이 되는 수보다 큰지 작은지를 판단할 때 사용하는 연산자입니다. '=' 기호가 붙어 있다면 그 수와 동일한 경우에도 True가 됩니다.
예 : n>5 : n이 5보다 클 경우 True, n<=10 : n이 10 혹은 10보다 작을 경우 True
(2) 일치 : ==, !=
왼쪽과 오른쪽 변수가 같거나 다른 경우를 판단합니다.
예 : n==5 : n이 5랑 같은 경우 True , n!=5 : n이 5가 아닐 경우 True
(3) And,or,not
연산자 |
내용 |
a and b |
a 와 b 모두 참이여야 참이다 |
a or b |
a와 b 둘 중 하나만 참이면 참이다
|
not a |
a가 거짓이면 참이다 |
(4) 포함 : in, not in
연산자 |
내용 |
a in 리스트/튜플/문자열 |
a라는 원자값이 리스트/튜플/문자열에 있으면 참이다. |
a not in 리스트/튜플/문자열 |
a라는 원자값이 리스트/튜플/문자열에 있으면 참이다. |
마무리
지금까지 조건문 중 가장 많이 사용되는 if문에 대해서 알아보았습니다. If문은 보통 한 개만 사용하는 것이 아니라 중첩으로 여러 개 사용되는데요. 이는 알고리즘 문제에서 많이 등장합니다. 이럴 경우 상당히 복잡해지죠. 쉬우면서 중요한 개념이니 꼭 숙지하셔야 합니다.
포스팅 읽어주셔서 감사합니다.
이전글