목차
조건문은 들여 쓰기를 구분합니다.
** 들여 쓰기: 일반적으로는 들여 쓰기를 사용하는 이유는 코드를 보기 좋게 이쁘게 하기 위해 들여 쓰기를 사용하지만 파이썬은 들여 쓰기가 문법화 되어 있습니다. 즉 파이썬은 맘대로 들여 쓰기를 해서는 안 됩니다.
if 조건식:
else:
if 문은 조건식을 정의한 후 콜론(:)을 적어주시면 됩니다.
else는 if 조건식이 False 일 때 실행되는 문법입니다. else는 조건식이 없고 그냥 else 뒤에 콜론(:)을 적어주시면 됩니다.
# if문 기본 사용법
if True:
print('True 이면 실행된다.')
if False:
print('False 이면 실행이 되지 않는다.')
# 성인인지 판단하는 문제
# 성인 기준을 20살 부터
age = 25
if age >= 20: # age가 20보다 크거나 같을 경우
print('성인입니다!')
else: # 아닐 경우
print('미성년자입니다!')
출력결과:
성인입니다!
elif문은 여러 개의 조건을 사용하고 싶을 때 사용하는 문법입니다.
if문에서 조건이 False라면 elif문에서 다시 조건을 검사하고 True 이면 elif을 실행하고 Flase 라면 else로 넘어갑니다. 다른 언어를 배우신 분이시라면 else if로 헷갈리실 수 있습니다. 파이썬에서는 elif로 사용합니다! elif를 여러 개 사용 가능합니다.
예제) 등급 나누기 예제
score = 95
if 90 <= score <= 100:
grade = 'A'
elif 80 <= score:
grade = 'B'
elif 70 <= score:
grade = 'C'
elif 0 <= score:
grade = 'D'
print(f'점수 {score}점, 등급 {grade}')
출력 결과:
점수 95점, 등급 A
여기서 의문점이 생기신 분이 있을 거 같습니다. if문을 여러 개 사용해도 될 거 같은데 왜 elif로 사용하는지 말이죠. 결론부터 말씀드리면 if문을 사용해도 같은 결과 값이 나옵니다. 하지만 코드가 너무나 비효율적입니다.
위에 예제로 if문을 사용해 만들어 보겠습니다.
score = 95
if 90 <= score <= 100:
grade = 'A'
if 80 <= score < 90:
grade = 'B'
if 70 <= score < 80:
grade = 'C'
if 0 <= score < 70:
grade = 'D'
print(f'점수 {score}점, 등급 {grade}')
위에 코드를 보시면 elif문을 사용했을 때와 if문만 사용했을 때와 코드를 비교해보면 코드 갯수가 차이 나는걸 알 수 있습니다. if문과 elif문에 차이점은 여러 개의 if문을 사용했을 때 if문은 각자 다른 if문입니다. 즉 그렇기 때문에 처음 if문부터 마지막 if문까지 모두 검사를 합니다. 만약 처음 if문이 True이라면 거기서 조건문이 종료되는 게 아니라 마지막 if문 실행까지 모두 검사를 해야 종료됩니다. 그렇기 때문에 if문을 사용하면 각 if문마다 조건식을 정확히 정해줘야 합니다. elif일 경우 elif는 if문에 속해있는 조건문입니다. 그렇기 때문에 만약 if문이 나 elif문 중 어느 하나라도 결과가 True이라면 그 자리에서 조건 검사가 종료됩니다. 그렇기 때문에 조건식 연산 코드도 간결해지는 이유입니다.
이상으로 파이썬에 조건문에 대해서 알아봤습니다. 잘못된 부분이나 부족한 부분 있으면 피드백 감사하겠습니다!!!