Immersion In Data

Python/혼자 공부하는 파이썬

[Python] 3. 조건문

sungjunminn 2022. 10. 20. 15:00

1. 불 자료형

불이란?

  • Boolean은 불린 또는 불리언이라는 발음으로 부른다.
  • 프로그래밍에서는 짧게 Bool이라고 쓰기도 한다.
  • 불은 오직 True(참) False(거짓) 값만 가질 수 있다.(첫 글자만 대문자)

 

불 만들기 : 비교 연산자

숫자 또는 문자열에 적용 가능하다. 

연산자 설명 연산자 설명
== 같다 > 크다
!= 다르다 <= 작거나 같다
< 작다 >= 크거나 같다

불은 비교연산자를 통해 만들 수 있다. 문자열에서도 비교연산이 가능한데 한글은 사전순서(가나다순)로 앞에 있는 것이 작은 값을 갖는다.

 

불 연산하기 : 논리 연산자

연산자 의미 설명
not 아니다 불을 반대로 전환한다. 
and 그리고 피연산자 두 개가 모두 참일 때 True를 출력하며, 그 외는 모두 False를 출력한다. 
or 또는 피연산자 두 개 중에 하나만 참이라도 True를 출력하며, 두 개가 모두 거짓일 때만 False를 출력한다.

 

 

2. if 조건문

if 불 값이 나오는 표현식 :  # 조건문 뒤에는 반드시 : 콜론을 붙여줘야함
불 값이 참일 때 실행할 문장 # if 다음 문장은 반드시 4칸 들여쓰기

 

날짜/시간 활용하기 

# 모듈이라는 기능을 활용해 날짜/시간과 관련된 기능을 가져온다
import datetime

# 현재 날짜/시간을 구한다
now = datetime.datetime.now()

# 길이가 길면 \을 사용하고 다음줄에 써도 무관하다.
print("{}년 {}월 {}일 {}시 {}분 {}초".\
      format(now.year,now.month, now.day,now.hour,now.minute,now.second))

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

 

elif 사용시 불필요한 연산 실수 주의

if score == 4.5 :
    print("신")
elif 4.2 <= score   # score < 4.5 는 불필요하다. 위에서 이미 걸러짐

처리 속도 : 숫자 > 문자열
컴퓨터는 모든 것을 숫자로 계산하기 때문에 문자열 연산보다 숫자 연산이 조금 더 빠르다.

 

False로 변환되는 값 

if 조건문의 매개변수에 불이 아닌 다른 값이 올 때는 자동으로 이를 불로 변환해서 처리한다.

  • False로 변환되는 값 : None, 숫자 0 과 0.0, 빈 컨테이너(빈 문자열, 빈 바이트열, 빈 리스트, 빈 튜플, 빈 딕셔너리 등) // 뭔가 없는 것 같은 것을 False라고 기억하자
  • 이외의 값은 True

 

pass 키워드

프로그래밍 하다 보면 일단 프로그래밍 전체 골격을 잡아 높고 내부에서 처리할 내용을 나중에 구현하겠다는 의도로 사용한다.

if number > 0 :
    pass
else :
    pass

 

raise NotImplementedError

pass라고 입력해뒀어도 잊어버리는 경우를 대비해서 사용한다.

if number > 0 :
     raise NotImplementedError
else :
     raise NotImplementedError

코드는 정상적으로 실행되나 구현되지 않은 부분에 들어서는 순간 NotImplementedError 이라는 오류를 발생시킨다.

 

 

 

‘혼자 공부하는 파이썬’을 읽고 공부한 내용을 바탕으로 작성하였습니다.