Programming/Python

[Python] 파이썬 조건문 : if, else, elif 조건문, 조건문 내부를 구현하지 않았을 때

728x90

 

 

if 조건문

: 조건에 따라 코드를 실행하거나, 실행하지 않게 만들고 싶을 때 사용하는 구문

- 기본적인 구조

if 불값이 나오는 표현식:
    불 값이 참일 때 실행할 문장
    불 값이 참일 때 실행할 문장
    # 4칸 들여쓰기

 

- (예) 계절를 구분하는 프로그램 - 날짜 출력

import datetime

now = datetime.datetime.now()

if 3 <= now.month <= 5:
    print("이번 달은 {}월로 봄입니다!".format(now.month))

if 6 <= now.month <= 8:
    print("이번 달은 {}월로 여름입니다!".format(now.month))

if 9 <= now.month <= 11:
    print("이번 달은 {}월로 가을입니다!".format(now.month))

if now.month == 12 or 1 <= now.month <= 2:
    print("이번 달은 {}월로 봄입니다!".format(now.month))


# 이번 달은 7월로 여름입니다!

    ˙ 대부분의 프로그래밍 언어가 월을 0~11까지로 출력하는 반면, 파이썬은 1~12월로 월을 출력한다

- (예) 끝자리로 짝수와 홀수 구분

number = input("정수 입력> ")

last_character = number[-1]
last_number = int(last_character)

# case 1
if last_number == 0 \
        or last_number == 2 \
        or last_number == 4 \
        or last_number == 6 \
        or last_number == 8:
    print("짝수입니다")

# case 2
if last_character in "02468":
    print("짝수입니다")

# case 3
if int(number) % 2 == 0:
    print("짝수입니다")

 

 

 

 

 

 


else 조건문

: if 조건문 뒤에 사용하며, if 조건문의 조건이 거짓일 때 실행되는 부분

- 기본적인 구조

if 조건:
	조건이 참일 때 실행할 문장
else:
	조건이 거짓일 때 실행할 문장

 

 

 

 

 

 


elif 구문

: 세 개 이상의 조건을 연결해서 사용하는 방법

- 기본 구조

if 조건A:
    조건A가 참일 때 실행할 문장
elif 조건B:
    조건B가 참일 때 실행할 문장
elif 조건C:
    조건C가 참일 때 실행할 문장
...
else:
    모든 조건이 거짓일 때 문장

 

 

 

 

 

 


False로 변환되는 값

- None

- 숫자 0

- 숫자 0.0

- 빈 컨테이너 (빈 문자열, 빈 바이트열, 빈 리스트, 빈 튜플, 빈 딕셔너리 등)

 

→ 이 외에는 모두 True로 변환

 

 

 

 

 

 


조건문 내부를 미구현한 경우

- 다음과 같이 if 조건문 사이 들여쓰기와 코드를 작성하지 않으면, IndentationError 발생한다

if number > 0:
    # 미구현
else:
    # 미구현

 

 

1. 0을 넣은 코드

if number > 0:
    0
else:
    0

- 정상적으로 실행된다

- 다른 개발자들이 직관적으로 이해할 수 없을 수 있다

 

 

 

2. pass 키워드

if number > 0:
    pass
else:
    pass

- "진짜로 아무것도 안함" 또는 "곧 개발하겠음"이라는 의미

 

 

 

3. raise NotImplementedError 오류 발생 시키기

- pass 키워드를 입력해 놨어도 개발하는 것을 잃어버리는 경우가 있습니다!

- raise 키워드와 미구현 상태를 표현하는 NotImplementedError를 조합하여 '아직 구현하지 않은 부분!'이라는 오류를 강제로 발생시킨다

- 코드는 정상적으로 진행되지만, 구현되지 않은 부분에 들어선 순간 NotImplementedError 발생

if number > 0:
    raise NotImplementedError
else:
    raise NotImplementedError

 

 

 

 

 

 

 

 

 

 

 

 

[참고서적] 혼자 공부하는 파이썬

 

혼자 공부하는 파이썬

이 책은 독학으로 프로그래밍 언어를 처음 배우려는 입문자가, 혹은 파이썬을 배우려는 입문자가 ‘꼭 필요한 내용을 제대로’ 학습할 수 있도록 구성했다. ‘무엇을’, ‘어떻게’ 학습해야

m.hanbit.co.kr

 

 

 

728x90