[python] if 조건문

anjiyoo·2024년 3월 6일

Python

목록 보기
9/41
post-thumbnail

1.조건문

  • 특정 조건일 때 코드를 실행하는 문법
  • 조건문 사용 시 값을 비교할 때는 == 로 사용
  • 파이썬에서 : 이 나오면 그 다음 줄 부터는 무조건 들여쓰기를 해야함
  • 들여쓰기에 따라 문법 에러가 발생하거나 의도치 않은 동작이 나올 수 있음
if 조건식:
	코드  # 바디 부분. 들여쓰기 4칸 필수

if 비가 온다면:
	우산을 가지고 나간다.
    
if 날씨가 춥다면:
	코트를 입고 나간다.
    
if 날씨가 덥다면:
	반소매에 얇은 옷을 입고 나간다.
  • pass를 사용하면 아무 동작 없이 넘어감
# if 조건문에서 코드 생략하기

x = 10
if x == 10:
	pass    # 아무 일도 하지 않고 그냥 넘어감

자주 쓰는 주석
TODO : 해야 할 일
FICME, BUG, NOTE 등


2.중첩 if 조건문 사용

  • if 를 여러 번 사용하는 조건문
if 조건식:
	코드
    if 조건식:
	코드
    	if 조건식:
		코드
if x >= 10:
	print('10 이상입니다.')
    
    if x == 15:
   	 print('15입니다.')
    
   		if x == 20:
   		print('20입니다.')

3.else를 사용해 두 방향으로 분기하기

  • if 조건문은 분기를 위한 문법
  • 분기란 둘 이상 갈라지다라는 뜻으로 프로그램 흐름을 둘 이상으로 나누는 것
  • else도 if 와 들여쓰기 규칙이 같음
 if 조건식:
 	코드1   # 조건식이 만족할 때 실행할 코드
else:
	코드2   # 조건식이 만족하지 않을 때 실행할 코드
# if, else에서 변수에 값을 할당 할 때 (축약)
변수 = 값 if 조건문 else 값

if x == 10:
	print('10입니다.')
else:
	print('x에 들어있는 숫자는')
	print('10이 아닙니다.')

4.if 조건문의 동작 방식

  • None는 False 취급
  • 0은 False
  • 빈 문자열은 False (문자열,리스트,튜플,딕셔너리,세트 모두 포함)
  • 클래스 인스턴스의 bool(), len() 메서드가 0 또는 False를 반환할 때 False
if True:
	print('참)  # Ture는 참
else:
	print('거짓)
    
if False:
	print('참')
else:
	print('거짓')  # False는 거짓
    
if None:
	print('참')
else:
	print('거짓')  # None는 거짓
# if 조건문에서 숫자 지정
# 숫자는 정수, 실수와 관계없이 0 이면 거짓, 0이 아닌 수는 참

if 0:
	print('참')
else:
	print('거짓')  # 0은 거짓
    
if 1:
	print('참')  # 1은 참
else:
	print('거짓')
    
if 0x1F:  # 16진수
	print('참')  # 0x1F은 참
else:
	print('거짓')
    
if 0b1000:  # 2진수
	print('참')  # 0b1000은 참
else:
	print('거짓')
    
if 13.5:  # 실수
	print('참')  # 13.5는 참
else:
	print('거짓')
# if 조건문에 문자열 지정하기
# 문자열은 내용이 있을 때 참, 빈 문자열은 거짓

if 'Hello':  # 문자열
	print('참')  # 문자열은 참
else:
	print('거짓')
    
if '':  # 빈 문자열
	print('참')
else:
	print('거짓')  # 빈 문자열은 거짓

5.조건식을 여러 개 지정하기

  • 논리 연산자를 사용하여 조건식을 여러 개 지정
x = 10
y = 20

if x == 10 and y == 20:  # x가 10 이면서 y가 20일 때
	print('참')
else:
	print('거짓')

6.중첩 if 조건문과 논리 연산자

if x > 0:
	if x < 20:
    	print('20보다 작은 양수입니다.')
if x > 0 and x < 20:
	print('20보다 작은 양수입니다.')
if 0 < x < 20:
	print('20보다 작은 양수입니다.')

7.elif를 사용하여 여러 방향으로 분기하기

  • if 조건문만 사용하면 모든 if 조건문의 조건식을 검사한 뒤 코드를 실행
  • if 조건문 뒤에 elif가 연결되어 있을 때는 첫 번째 if 조건식이 만족하면 뒤에 오는 elif 조건식은 검사하지 않고 건너뜀
  • if elif는 여러 코드 중에서 하나만 실행할 때 사용
if 조건식:
	코드1
elif 조건식:
	코드2
if 조건식:
	코드1
elif 조건식:
	코드2
else:
	코드3
x = 30

if x == 10:
	print('10입니다.')  # x가 10일 때
elif x == 20:
	print('20입니다.')  # x가 20일 때
else:
	print('10도 20도 아닙니다.')  # 앞의 조건식에 모두 만족하지 않을 때

# 음료수 자판기 만들기

button = int(input())

if button == 1:
	print('콜라')
elif button == 2:
	print('사이다')
elif bntton == 3:
	print('환타')
else:
	print('제공하지 않는 메뉴')
profile
기록으로 흔적을 남기는 것을 좋아합니다

0개의 댓글