목차
1. 조건문 If Statement란?
지금까지 변수, 데이터 타입, 입력과 출력에 대해 배웠습니다. 이제부터는 프로그램이 상황에 따라 다른 행동을 하도록 만들어 볼 차례입니다.
- 나이가 20살 이상이면 성인이라고 출력하기
- 비밀번호가 맞으면 로그인 성공하기
- 시험 점수가 90점 이상이면 A학점 부여하기
이러한 기능들은 모두 조건문, 즉 Conditional Statement를 통해 구현됩니다.
조건문은 특정 조건이 참(True)일 때만 코드를 실행하는 문법입니다.
만약 이것이 맞다면 실행해라라는 판단 구조를 코드로 표현하는 방법입니다.
- 비가 오면 우산을 챙긴다.
- 배가 고프면 밥을 먹는다.
- 시험 점수가 높으면 장학금을 받는다.
2. if 문 기본 구조
Python의 가장 기본적인 조건문 형태입니다.
if 조건식:
실행할 코드예제입니다.
age = 20
if age >= 20:
print("성인입니다.")실행 결과입니다.
성인입니다.age >= 20 조건이 True이므로 아래 코드가 실행됩니다.
age >= 203. 조건식과 비교 연산자
조건식은 결과가 True 또는 False로 나오는 식입니다.
10 > 5결과입니다.
True3 > 10결과입니다.
False조건문은 이러한 True/False 값을 기준으로 동작합니다.
비교 연산자 알아보기
| 연산자 | 의미 |
|---|---|
| == | 같다 |
| != | 같지 않다 |
| > | 크다 |
| < | 작다 |
| >= | 크거나 같다 |
| <= | 작거나 같다 |
비교 연산자 예제입니다.
age = 18
print(age == 18)
print(age > 20)결과입니다.
True
False4. if 문 실습 예제
예제 1. 성인 판별하기
age = int(input("나이를 입력하세요: "))
if age >= 20:
print("성인입니다.")입력입니다.
25결과입니다.
성인입니다.예제 2. 비밀번호 확인
password = input("비밀번호 입력: ")
if password == "1234":
print("로그인 성공")입력입니다.
1234결과입니다.
로그인 성공5. else 문 사용하기
조건이 거짓일 때 실행할 코드를 작성하려면 else를 사용합니다.
if 조건식:
실행코드
else:
실행코드예제입니다.
age = int(input("나이를 입력하세요: "))
if age >= 20:
print("성인입니다.")
else:
print("미성년자입니다.")입력입니다.
17결과입니다.
미성년자입니다.6. elif 사용하기
조건이 여러 개일 때는 elif를 사용합니다.
if 조건1:
실행코드
elif 조건2:
실행코드
else:
실행코드점수 등급 계산 프로그램
score = int(input("점수를 입력하세요: "))
if score >= 90:
print("A 학점")
elif score >= 80:
print("B 학점")
elif score >= 70:
print("C 학점")
else:
print("재시험")입력입니다.
85결과입니다.
B 학점7. 들여쓰기 Indentation의 중요성
Python은 들여쓰기를 매우 중요하게 생각합니다. 다른 언어처럼 중괄호를 사용하지 않습니다.
올바른 예입니다.
if True:
print("실행")잘못된 예입니다.
if True:
print("실행")결과입니다.
IndentationError보통 스페이스 4칸을 사용합니다. 조건문 아래에서 실행될 코드는 반드시 들여쓰기해야 합니다.
8. 논리 연산자 사용하기
논리 연산자를 사용하면 여러 조건을 동시에 검사할 수 있습니다.
| 연산자 | 의미 | 사용 상황 |
|---|---|---|
| and | 둘 다 참이어야 참 | 나이와 금액 조건을 모두 만족해야 하는 경우 |
| or | 하나만 참이어도 참 | VIP 또는 쿠폰 중 하나만 있어도 되는 경우 |
| not | 참과 거짓을 반대로 바꿈 | 로그인하지 않은 상태를 확인하는 경우 |
and
age = 25
money = 10000
if age >= 20 and money >= 5000:
print("영화 관람 가능")or
vip = False
coupon = True
if vip or coupon:
print("할인 가능")not
login = False
if not login:
print("로그인이 필요합니다.")9. 조건문 중첩과 로그인 예제
if 문 안에 또 다른 if 문을 넣을 수 있습니다.
age = 25
member = True
if age >= 20:
if member:
print("회원 전용 서비스 이용 가능")결과입니다.
회원 전용 서비스 이용 가능실무 예제: 로그인 시스템
id = input("아이디 입력: ")
pw = input("비밀번호 입력: ")
if id == "admin":
if pw == "1234":
print("로그인 성공")
else:
print("비밀번호 오류")
else:
print("아이디 없음")실제 웹사이트 로그인 로직의 기본 원리입니다.
10. 자주 하는 실수와 실습 문제
초보자가 자주 하는 실수
=는 값을 저장할 때 사용하고, ==는 두 값이 같은지 비교할 때 사용합니다.
조건문 아래 실행 코드는 반드시 들여쓰기해야 합니다.
input()으로 받은 값은 문자열이므로 숫자 비교 전 int()로 변환해야 합니다.
= 와 ==를 헷갈린 잘못된 예입니다.
if age = 20:올바른 예입니다.
if age == 20:들여쓰기 오류 예시입니다.
if age > 20:
print("성인")문자열과 숫자를 비교하는 잘못된 예입니다.
age = "20"
if age > 18:올바른 예입니다.
age = int(age)
if age > 18:실습 문제
사용자의 나이를 입력받아 20세 이상이면 성인, 미만이면 미성년자를 출력합니다.
사용자의 점수를 입력받아 90 이상은 A, 80 이상은 B, 70 이상은 C, 그 외는 F를 출력합니다.
비밀번호가 python123이면 로그인 성공, 아니면 로그인 실패를 출력합니다.
문제 3 출력 예시입니다.
로그인 성공
로그인 실패11. 핵심 정리와 다음 편 예고
이번 시간에는 Python의 조건문인 if 문을 배웠습니다.
- if는 조건이 참일 때 실행합니다.
- else는 조건이 거짓일 때 실행합니다.
- elif는 여러 조건을 처리합니다.
- 비교 연산자를 사용할 수 있습니다.
- and, or, not을 활용할 수 있습니다.
- Python은 들여쓰기가 매우 중요합니다.
조건문은 프로그래밍의 핵심입니다. 사용자의 입력에 따라 프로그램이 다른 결과를 보여줄 수 있게 되며, 로그인 시스템, 게임, 웹 서비스, AI 프로그램 등 거의 모든 소프트웨어에서 사용됩니다.
다음 편에서는 반복적으로 작업을 수행할 수 있는 반복문 Loop를 배워보겠습니다.
- for 문 기본 문법
- range() 함수 사용법
- 리스트 반복하기
- 중첩 반복문
- 구구단 만들기 실습
- 실무 활용 예제
