[파이썬] if & else & elif 구문과 이에 사용되는 비교 연산자들

2025. 2. 6. 13:57·[파이썬]
728x90

불 자료형과 if 조건문

프로그래밍 언어엔 불(Boolean)이라는 참과 거짓을 나타내는 값이 있다

불은 오직 “참”, “거짓” 두가지의 값만 가질 수 있다

비교 연산자

불은 비교 연산자를 사용하여 만들 수 있다

연산자 설명

== 같다
≠ 다르다
< 작다
> 크다
≤ 작거나 같다
≥ 크거나 같다

파이썬의 경우 문자열에도 비교연산자를 사용할 수 있다

사전 순서대로 진행하여 예를들어 “가방”과 “하마”를 비교했을 시

“가방”의 “가”가 “하마”의 “하”보다 먼저 사전 상 위치하기에

“가방”이 “하마” 보다 작다 라는 결과가 나온다

print("가방" < "하마")

#결과
True

범위구하기

파이썬은 다음과 같은 코드를 사용해서 범위를 구할 수 있다

x=25
print(10<x<=30)

#result
True

논리 연산자

불끼리 연산 시 논리 연산자를 사용할 수 있다

연산자 의미 설명

not 아니다 불을 반대로 전환함 (True → False)
and 그리고 불이 모두 True 일때 True, 하나라도 False면 False 반환
or 또는 불 중에 하나라도 True면 True 반환

not 연산자

print(not True)
print(not False)

#result
False
True

and 연산자, or 연산자

and 연산자 개념 → 양변이 모두 True 일때만 True 반환

좌변 우변 결과

True True True
True False False
False True False
False False False

or 연산자 개념 → 양 변 중 하나라도 True면 True 반환

좌변 우변 결과

True True True
True False True
False True True
False False False

논리 연산자의 사용

  • and - 두 가지 조건을 모두 충족시킬 때 사용
  • or - 둘 중 하나만 조건을 충족시킬 때 사용

if 조건문이란?

파이썬에서 if 조건문을 사용하면 조건에 따라 코드를 실행 여부를 결정할 수 있게하는 구문이다.

#기본적인 구조
if 불 값이 나오는 표현식:
    불 값이 참일 때 실행되는 코드
    불 값이 참일 때 실행되는 코드
    #앞에 띄어쓰기 4칸을 반드시 해야 파이썬이 if 밑에 있는 코드라고 인식을 하고 돌작함

활용 예시

number = int(input("input degit: ")) #숫자 입력력

if number >0: #만약 입력받은 숫자가 0보다 크면면
    print("양수") #양수를 출력해라라
if number<0: #만약 입력받은 숫자가 0보다 작으면면
    print("음수") #음수를 출력해라라
if number==0: #만약 입력받은 숫자가 0이면면
    print(0) #0을 출력해라라
    
#result
input degit: 3
양수

날짜/시간 활용하기

import datetime #모듈에서 배울 datetime 기능 가져오기
now = datetime.datetime.now() #현재 날짜/시간 가져오기

print("{}년 {}월 {}일 {}시 {}분 {}초".format(now.year, now.month, now.day, now.hour, now.minute, now.second))

#result
2025년 2월 5일 13시 51분 24초

Chapter 7에서 살펴볼 모듈인 datetime 모듈을 사용하여 날짜와 시간을 구한 후

이를 2장에서 살펴본 format 함수를 사용하여 현재 시간을 알려주는 문장을 출력함

이를 바탕으로 조건문을 사용해 오전 오후를 구분하는 코드를 예시로 구현함

import datetime

now = datetime.datetime.now()
if now.hour < 12:
    print("현재 시각은 {}시로 오전입니다!".format(now.hour))
if now.hour > 12:
    print("현재 시각은 {}시로 오후입니다!".format(now.hour))
    
#result
현재 시각은 13시로 오후입니다!

if~else 와 elif 구문

조건이 두개로 나눠지는 상황속에서 if를 두번 사용해서 조건을 나누는 것은 상당히 비효율적이다

else 조건문의 활용

else 구문은 if 조건문 뒤에 사용하며, if 조건문의 조건이 거짓일 때 실행되는 부분이다.

if 조건:
    조건이 참일 때 실행되는 부분
else:
    조건이 거짓일 때 실행되는 부분

예제

number = int(input("정수 입력: "))
if number%2 == 0:
    print("짝수")
else:
    print("홀수")
    
#result
정수 입력: 98
짝수

elif 구문

조건이 두가지로 구분되지 않을때 (계절, 요일 등) 세 개 이상의 조건을 연결해서 사용 시 사용

if 조건A: 
    조건A가 참일 때 실행되는 부분
elif 조건B:
    조건 B가 참일 때 실행되는 부분
else:
    조건들이 모두 거짓일 때 실행되는 부분

예제

import datetime
now = datetime.datetime.now() #현재시간 : 2025년 2월 5일

if 3 <= now.month <= 5:
    print("봄")
elif 6 <= now.month <=8:
    print("여름")
elif 9<=now.month<=11:
    print("가을")
else:
    print('겨울')

False로 변환되는 값

  • None
  • 0
  • 0.0
  • 빈 문자열
  • 빈 바이트열
  • 빈 리스트
  • 빈 튜플
  • 빈 딕셔너리
  • 빈 컨테이너

이것들 외에는 모두 True로 반환

print("zero in if")
if 0:
    print("0 returns false")
else:
    print("0 returns true")

print("nothing in string")
if "":
    print("nothing returns false")
else:
    print("nothing returns true")
    
#result
zero in if
0 returns fasle

nothing in string
nothing returns false

pass 키워드

나중에 구현하려고 비워둔 구문이 있을때 “그냥 넘어가라”라는 뜻으로 사용하는 키워드

if나 else 사이에 어떤 내용도 없으면 ‘IdentationError’ 예외가 나타나기에

어떤 내용이라도 넣어줘야 한다.

number = int(input("number: "))
if number > 0:
    pass
else:
    pass
print("pass가 실행됬습니다")

#result
number: 5
pass가 실행됬습니다

raise NotImplementedError

미구현 상태를 표현하는 NotImplementedError를 raise 키워드를 사용해 강제로

발생시킬 수도 있다

728x90

'[파이썬]' 카테고리의 다른 글

[파이썬] recursion(재귀)와 메모화의 중요성  (0) 2025.02.08
[파이썬] 파이썬 함수와 매개변수  (0) 2025.02.08
[파이썬] for 반복, while 반복과 딕셔너리, 그리고 iterable & iterator  (0) 2025.02.06
[파이썬] string, int, float, bool 등의 파이썬 기본 자료형  (0) 2025.02.04
[파이썬] 파이썬이란?  (0) 2025.02.04
'[파이썬]' 카테고리의 다른 글
  • [파이썬] 파이썬 함수와 매개변수
  • [파이썬] for 반복, while 반복과 딕셔너리, 그리고 iterable & iterator
  • [파이썬] string, int, float, bool 등의 파이썬 기본 자료형
  • [파이썬] 파이썬이란?
뽕규의 스케치북
뽕규의 스케치북
공부 열심히 해볼게요
  • 뽕규의 스케치북
    뽕규의 스케치북
    뽕규의 스케치북
  • 전체
    오늘
    어제
  • 링크

    • 파이썬 공식 문서
    • GitHub
    • 분류 전체보기 (37)
      • [파이썬] (17)
      • [데이터 분석] (3)
      • [Git&GitHub] (5)
      • [자료구조 & 알고리즘] (3)
      • [안드로이드 앱] (0)
      • [네트워크] (0)
      • [머신러닝 & 딥러닝] (0)
      • [SQL] (1)
      • [컴퓨터 구조 & 운영체제] (0)
      • [개발자 수학] (0)
      • [노션] (6)
      • [기타] (2)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 공지사항

  • 인기 글

  • 태그

    발전
    개념
    공부
    GIT
    github
    소스트리
    수식
    TODO
    *
    pull
    python
    DB
    파이썬
    노션
    깃
    함수
    sourcetree
    깃허브
    push
    기초
  • 최근 댓글

  • 최근 글

  • 250x250
  • hELLO· Designed By정상우.v4.10.3
뽕규의 스케치북
[파이썬] if & else & elif 구문과 이에 사용되는 비교 연산자들
상단으로

티스토리툴바