📚 [Archive] CS & AI 스터디/[STUDY] Python 기초 🐍

[Python] if문 완벽히 정복하기

히주 2024. 12. 23. 21:00

 

Python은 직관적이고 간단한 문법으로 많은 사랑을 받는 프로그래밍 언어입니다. 프로그램이 상황에 따라 다르게 동작하도록 만드는 데 필수적인 것이 바로 조건문입니다!  앞으로 있을 while문과 for문 중에 저는 가장 쉬웠던 것 같아요! 기초부터 차근차근 시작해봅시다.


🧩조건문의 종류

- 조건문은 특정 조건을 만족할 때 어떤 동작을 수행하도록 하는 문장

- 조건식의 참과 거짓의 상태에 따라 그 상태에서 필요로 하는 코드를 수행

  • if 문: 조건이 참(True)일 때 코드 블록 실행
  • if-else 문: 조건이 참이면 if 블록 실행 거짓이면 else 블록 실행
  • if-elif-else 문: 여러 조건을 순차적으로 평가하고 처음으로 참인 블록을 실행
  • 중첩 if 문: if 문 안에 또 다른 if 문을 작성하여 여러 단계의 조건을 설정

 

🔍 조건문과 조건식

if 문에서 중요한 부분은 조건식입니다. 조건식은 관계 연산자와 논리 연산자를 사용해 작성됩니다.

🔢 관계 연산자

두 개의 피연산자를 비교

연산 표현 내용 결과(x=10, y=5)
x > y x가 y보다 큰가? T
x < y x가 y보다 작은가? T
x >= y x가 y보다  크거나 같은가? F
x <= y x가 y보다 작거나 같은가? F
x == y x와 y가 같은가? F
x != y  x와 y가 다른가? T

🧮 논리 연산자

여러 조건을 조합해 참인지 거짓인지 파악

연산자 설명
x and y x와 y가 모두 T면 T, 그렇지 않으면 F
x or y x와 y중 하나만 T면 T, 모두 F이면 F
not x x와 T이면 F, x가 F이면 T

📄 조건식 예시

조건식 설명
total >= 100 total 변수가 100 이상이면 True
kor + eng < 100 kor와 eng 변수의 합이 100 미만이면 True
5 <= age < 50 age가 5 이상이고 50 미만이면 True
num % 3 == 0 num을 3으로 나눈 나머지가 0이면 True
grade == 'a' or english >= 90 grade가 'a'이거나 english가 90 이상이면 True
not(weather == '겨울') weather가 '겨울'이 아니면 True

 

 

 

⚙️if문의 기본 구조

if 문은 조건을 평가하고 그 조건이 참(True)일 때 특정 코드를 실행합니다.

# if문의 기본 구조
if 조건식:
	실행할 코드
    
#ex)
x = 10
if x > 5 :
print("x는 5보다 큽니다.")

# 실행결과 > x는 5보다 큽니다.

 

🟡 if-else 문

if 문 다음에 else를 사용하면 조건이 거짓(False)일 때 실행될 코드를 지정할 수 있습니다.

# if-else문의 기본 구조
if 조건식:
	실행할 코드
else :
	실행할 코드


# ex)
x = 3
if x > 5:
    print("x는 5보다 큽니다.")
else:
    print("x는 5보다 크지 않습니다.")
    
# 실행 결과 > x는 5보다 크지 않습니다.

 

 

🧩 퀴즈! if~elif 문을 이용한 성적 출력 🧩

문제:
점수에 따라 등급을 출력하는 프로그램을 작성하세요.

점수가 90점 이상이면 'A' 출력

점수가 80점 이상 ~ 90점 미만이면 'B' 출력

점수가 70점 이상 ~ 80점 미만이면 'C' 출력

점수가 60점 이상 ~ 70점 미만이면 'D' 출력

점수가 60점 미만이면 'F' 출력

score = int(input("점수를 입력하세요: "))

if score >= 90:
    print('A')
elif score >= 80:
    print('B')
elif score >= 70:
    print('C')
elif score >= 60:
    print('D')
else:
    print('F')

 

 

🔵 if-elif-else 문

여러 조건을 순차적으로 평가하고 첫 번째로 참(True)인 블록을 실행합니다.

# if-elif문의 기본 구조
if 조건식1:
	실행할 코드
elif 조건식2:
	실행할 코드
else :
	실행할 코드


# ex)
x = 7
if x > 10:
    print("x는 10보다 큽니다.")
elif x > 5:
    print("x는 5보다 큽니다.")
else:
    print("x는 5보다 크지 않습니다.")
    
# x는 5보다 큽니다.

 

 

🔴 중첩 if 문

if 문 안에 또 다른 if 문을 작성할 수 있습니다.

# 중첩 if문의 기본 구조
if 조건식1:
	실행할 코드
    if 조건식2:
    	실행할코드
else:
	실행할 코드

# ex)
x = 15
if x > 10:
    print("x는 10보다 큽니다.")
    if x > 20:
        print("x는 20보다 큽니다.")
    else:
        print("x는 20보다 크지 않습니다.")
 
# x는 10보다 큽니다.
# x는 20보다 크지 않습니다.

 

 

 

 

 🚗 퀴즈! 차량 2부제(홀짝제) 프로그램 작성 🚗

차량 번호와 날짜를 입력받아 차량 운행 여부를 판단하는 프로그램을 작성하세요.

운행 규칙

차량번호가 홀수이면 홀수 날짜에 운행

차량번호가 짝수이면 짝수 날짜에 운행

조건

날짜(Day)는 1 ~ 31 사이의 값만 입력 가능

차량번호는 반드시 4자리로 입력되어야 함

오류 처리

날짜가 1 ~ 31 범위를 벗어나면 "일(day) 입력 오류입니다." 출력 후 종료

차량번호가 4자리가 아니면 "차량번호 입력 오류입니다." 출력 후 종료

힌트

len() 함수를 사용하여 문자열의 길이를 확인할 수 있습니다.

day = int(input("오늘은 몇 일?(입력: 1 ~ 31): "))
car_number = input("차량번호 4자리 입력?(예: 1234): ")

if day < 1 or day > 31:
    print("일(day) 입력 오류입니다.")
elif len(car_number) != 4:
    print("차량번호 입력 오류입니다.")
else:
    if (int(car_number[-1]) % 2 == 0 and day % 2 == 0) or (int(car_number[-1]) % 2 != 0 and day % 2 != 0):
        print("운행 가능합니다.")
    else:
        print("운행 불가능합니다.")

 

 

🧠 추가적인 문제를 통해 실력을 향상시키고 싶다면 백준 알고리즘의 [단계별로 풀어보기]에서 [조건문] 문제들을 풀어보며 복습하기 해보세요!  뇌 말랑말랑을 위해 파이팅!!