시작은 미약하였으나 , 그 끝은 창대하리라

03강) 조건문 본문

프로그래밍/파이썬

03강) 조건문

애플파ol 2022. 1. 12. 10:03

목차:

       03_1) 불 자료형과 if 조건문

       03_2) if~else와 elif구문

 

 

 

03_1) 불 자료형과 if 조건문

          -불 만들기 : 비교 연산자

          -불 연산하기 : 논리 연산자

          -논리 연산자의 활용

          -if 조건문이란?

          -날짜/시간 활용하기

 

  ▶불 만들기 : 비교 연산자

         불: True(참) 와 False(거짓) 값만을 갖는다.  ->그러나 참 거짓을 입력하는 것은 우리에게는 의미가 없음. 

                                                                  ->어떤 명제의 결과가 될 때 의미가 존재함.

                                                                     ex) 조건문,반복문에서 참일때만 실행하기 위해서

                                                                         결과값(참,거짓)이 의미가 존재함

                                                                   

       비교연산자 : 숫자 또는 문자열에 적용하며, 대소를 비교하는 연산자 

 

------------연산자------------ -------------설명------------- ------------연산자------------ -------------설명-------------
== 같다 > 크다
!= 다르다(같지 않다) <= 작거나 크다
< 작다 >= 크거나 같다

 

prtint(10==100)
False

print(10 !=100)
True

ptint(10<100)
True

Tip) 파이썬은 문자열에도 비교 연산자 적용 가능

print("대학교" == "중학교")
False

print("대학교" < "중학교")               # 사전순으로 '대학교'가 '중학교'보다 앞에 있음
False

Tip) C언어와 다르게 부등호를 동시에 2개 사용해서 범위값 설정 가능

X=40
print(30<X<50)               # C언어에서는 논리 연산자를 통해 ((30<x) && (x<50)) 으로 해야함
True

print(10<X<20)
False

 

  ▶불 연산하기 : 논리 연산자

-----------------연산자------------------- -------------------의미------------------- -------------------설명-------------------
not 아니다 불을 반대로 전환함
and 그리고 피연산자 두 개가 모두 참일때만 True,
나머지 경우는 False 
or 또는 두개가 모두 거짓일때만 False.
나머지 경우는 True.

 

  ▶논리 연산자의 활용

      -> and : 두 가지 조건을 충족하는 경우

      -> or   : 하나의 경우가 충족하는 경우

 

 

  ▶if 조건문이란?

      syntax :  if 불 값이 나오는 표현식:           

                      ()()()()불 값이 참일 때 실행할 문장   

       

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

 

       주의) 1) 조건이 참 일때만 실행함 (실행할 문장은 4칸 들여쓴다.)

               2) 반복문이 아님 -> 실행후 if 문은종료가 됨

               3) if 문뒤에 : 써줘야 함

        Tip) 4칸 들여쓰기 tab키 사용(= space 4번), 들여쓰기 제거하고 싶을때 shift키+tab키

if True:                                # 참 임으로 if문이 무조건 실행이 됨
    print("True가 출력됩니다")          # if문에 걸어줄것은 4칸 들여써야함 
True가 출력됩니다  



if False:                                # False임으로 if문이 실행이 되지않고
    print("출력되지 않습니다")           # if문에 걸어줄것은 4칸 들여써야한다
print("출력이 되는문장")                 # if문이 아닌 문장은 출력이 됨
출력이 되는문장
number =int(inuput("정수를 입력하세요: "))
if number > 0 :
	print("양수입니다")
if number < 0 :
	print("음수입니다")
if number == 0 :
	print("0입니다)
    
정수를 입력하세요: 86
양수입니다

 

 

▶날짜/시간 활용하기

import datetime                     # 날짜/시간과 관련된 기능을 가져옴

now=datetime.datetime.now()         # 현재 날짜/시간을 구함  
                                    # datetime.datetime.now() 함수를 이용해서 
                                    # now라는 변수에 할당함

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

2022 년
1 월
11 일
22 시
56 분
4 초

 

 

 

03_2) if~else와 elif구문

-else 조건문의 활용

-elif 구문

-if 조건문을 효율적으로 사용하기

-False로 변환되는 값

-pass, raise NotImplementedError 키워드

 

 

  ▶else 조건문의 활용

   syntax)   if 조건:                                      

                  ()()()()조건이 참일 때 실행할 문장  

                  else:                                       

                  ()()()()조건이 거짓일 때 실행할 문장

 

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

  -> 조건문이 오로지 두가지로만 구분될때 if else구문 사용  ex) 홀수 짝수

    주의) 1) if구문과 마찬가지로 들여쓰기4칸이 필요함

            2) else뒤에도 : 써줘야 함

    Tip) 조건문이 오로지 두가지로만 구분될때 if else구문 사용  ex) 홀수 짝수

number=int(input("정수입력: "))

if number % 2 == 0 :
	print("짝수입니다")
else:                             # 조건이 거짓일때 실행됨
	print("홀수입니다")
    
정수입력: 15
홀수입니다

 

  ▶elif 구문

        syntax) if 조건A:                                           

                  ()()()()조건 A가 참일 때 실행할 문장        

                  elif 조건B:                                        

                  ()()()()조건 B가 참일 때 실행할 문장         

                  elif 조건C:                                         

                  ()()()()조건 C가 참일 때 실행할 문장         

                  . . .                                                  

                  else:                                                 

                  ()()()()모든 조건이 거짓일 때 실행할 문장   

 

 ->세 개 이상의 조건을 연결해서 사용하는 방법인 elif구문

    주의) 1) if구문과 마찬가지로 들여쓰기4칸이 필요함

            2) if 뒤, elif 뒤,else 뒤 : 써줘야 함 

 

     Tip)  1) 세 개 이상의 조건을 연결해서 사용하는 방법인 elif구문

 

  ▶if 조건문을 효율적으로 사용하기

            2) 위에서 실행된 조건이 성립 안될시에 다음 elif 문으로

               넘어감으로 그다음 elif문에서 조건식을 작성시 위에 

                조건을 배제하고 작성해도 됨

                (즉. 상위값을 비교하고 왔기때문에 하위값 비교시

                      자동으로 상위값을 고려하고 봄)

if score ==4.5:
	print("A+")
elif 4.0<=score<4.5:
	print("A")
elif 3.5<=score<4.0:
	print("B+")
. . .
else:
	print("재수강")
    
    
#위와 같은식을 아래와 같이 간단하게 만들수 있다


if score ==4.5:
	print("A+")
elif 4.0<=score:
	print("A")
elif 3.5<=score:
	print("B+")
. . .
else:
	print("재수강")

  ▶False로 변환되는 값

     ->False로 변환되는 값 : None, 숫자0 과 0.0, 빈컨테이너(빈 문자열, 빈 바이트열, 빈 리스트,빈 튜플, 빈 딕셔너리 등)

        True로 변환되는 값 : 위에 언급한 세가지를 제외한 값

         Tip : 뭔가 없는 것 같은 것을 False라고 암기함

print("if조건문에 0 넣기")
if 0:
    print("0은 True로 변환됩니다")
else:
    print("0은 False로 변환됩니다")
    
    
if조건문에 0                                 # 실행해보면 0은 false라는 것을 알 수 있음
0은 False로 변환됩니다

  ▶pass, raise NotImplementedError 키워드

              -> pass키워드를 만나면 "진짜로 아무것도 안함" 또는 곧 개발하겠음" 이라는 의미임.

              주의) 다른 프로그램에서는 아무 내용을 작성하지 않아도 실행이 되지만 파이썬은 아님

              Tip)  구현이 안된 코드가 존재함에도 프로그램이 중지되지 않고 실행이 됨으로 유용함

 

 

         

number =int(input("숫자를 입력하세요: "))

if number > 0:	
	# 양수일 때 아직 미구현 상태임
    pass
else:
	# 음수일 때 아직 미구현 상태임
    pass

               -> raise NotImplementedError 키워드를 만나면 아직 구현하지 않은 부분이라는 오류를 강제로 출력시킴

                   (사용이유 : pass키워드를 사용하였다가 오류가 없어서 프로그램이 완성되었다는 착각 방지용)

                 

number =int(input("숫자를 입력하세요: "))

if number > 0:	
	# 양수일 때 아직 미구현 상태임
    raise NotImplementedError
else :
	# 음수일 때 아직 미구현 상태임
    raise NotImplementedError

'프로그래밍 > 파이썬' 카테고리의 다른 글

06강 ) 예외 처리  (0) 2022.01.25
05강) 함수  (0) 2022.01.21
파이썬) 라이브러리 업뎃중  (0) 2022.01.17
04강) 반복문  (0) 2022.01.13
02강) 자료형  (0) 2022.01.11
Comments