[혼공스터디][혼자공부하는 파이썬] Week2 - Ch03

Diacece·2024년 1월 14일
0

혼공스터디 11기

목록 보기
3/3

프로그램이 선택의 갈림길에 서는 순간..

Ch03 조건문


2주차 미션 완료!!


1. 불 자료형과 if 조건문

  • boolean : 프로그래밍 언어에서 기본적인 자료형으로 참과 거짓을 나태나는 값

    • 오직 True(참), False(거짓) 값만 가질 수 있다.
    • 파이썬에서는 True, False 의 첫글자를 반드시 대문자로 작성해야 한다.
    • '어떤 명제'의 결과가 될 때 의미를 갖는다.

    불 만들기 : 비교 연산자

  • 파이썬에는 6개의 비교 연산자가 있다.

    연산자설명
    ==같다
    !=다르다
    <작다
    >크다
    <=작거나 같다
    >=크거나 같다
  • 코드실행의 결과는 True/False 로 나타남

    >>> print(10 == 100)
    False
    >>> print(10 != 100)
    True
    >>> print(10 < 100)
    True
    >>> print(10 > 100)
    False
    >>> print(10 <= 100)
    True
    >>> print(10 >= 100)
    False
  • 문자열, 변수의 범위 비교 등도 가능

    >>> print("가방" == "가방")
    True
    >>> print("가방" != "하마")
    True
    >>> print("가방" < "하마")
    True
    >>> print("가방" > "하마")
    False
    

    불 연산하기 : 논리 연산자

    연산자의미설명
    not아니다참, 거짓을 반대로 전환
    and그리고모두 참일 때만 True, 나머지 False
    or또는하나만 참이라도 True, 모두 거짓일 때 False
  • and 연산자
    - 조건 : "표를 1장 (and) 오후 3시 이후에 구매할 수 있다."

  • or 연산자
    - 조건 : "결제한 카드가 우리카드나(or) 신한카드라면 10% 할인 해 준다."

if 조건문

  • 조건에 따라 코드를 실행하거나 실행하지 않게 만든다.
  • 코드의 실행 흐름을 변경한다(조건분기)

    if bool 조건식 : --> if 조건문 뒤에는 반드시 콜론(:)을 붙인다.
    bool 이 참일 때 실행할 문장

if true :
    print("True 입니다.")

True 입니다.


if False :
    print("False 입니다.")

False 입니다.

날짜/시간 활용하기

  • 시간을 조건으로 구분하여 출력하는 프로그램 작성하기
  • 날짜/시간을 한줄로 출력하기
  • 오전과 오후를 구분하는 프로그램
  • 계절을 구분하는 프로그램

짝수와 홀수 구분하기 : bool 값에 어떤 조건식을 넣으면 좋을까?

  • 끝자리로 짝수와 홀수 구분

  • in 문자열 연산자를 활용해서 짝수와 홀수 구분

  • 나머지 연산자를 사용해서 더 간단하게 구현하기


    마무리 문제



2. if~else 와 elif 구문

else 조건문의 활용

  • if 조건문이 거짓일 때 실행되는 문장을 작성한다.

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

  • if 조건문에 else 구문을 추가해서 짝수와 홀수 구분하기

elif 구문:

  • 세 개 이상의 조건을 연결해서 사용할 때

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

  • 계절 구하기

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

  • 예제로 구현할 조건

    조건설명(학생평가)조건설명(학생평가)
    4.51.75~2.3오락문화의 선구자
    4.2~4.5교수님의 사랑1.0~1.75불가촉천민
    3.5~4.2현 체제의 수호자0.5~1.0자벌레
    2.8~3.5일반인0~0.5플랑크톤
    2.3~2.8일탈을 꿈꾸는 소시민0시대를 앞서가는 혁명의 씨앗
  • 유머를 조건문으로 구현하기 1

  • 유머를 조건문으로 구현하기 2

  • 차이점 : 이미 한번 한 비교는 생략한다.
    조건비교를 반만 하게 되고 코드의 가독성이 향상됨

False 로 변환되는 값

if 조건문의 매개변수에 bool 이 아닌 다른 값이 올 때는 자동으로 변환하여 처리함
- false로 변환되는 값 : None, 0, 0.0, 빈 컨테이너(빈 문자열, 빈 리스트, 빈 튜플, 빈 딕셔너리 등)

      False로 변환되는 값
          print("# if 조건문에 0 넣기")

          if 0 :
              print("0은 True로 변환됩니다.")

          else:
              print("0은 False로 변환됩니다.")
              print()


          print("# if 조건문에 빈 문자열 넣기")

          if "" :
              print("빈 문자열은 True로 변환됩니다.")
          else :
              print("빈 문자열은 False로 변환됩니다.")
- 조건문에 0이 있으므로 False 변환 -> 5행의 else 구문 실행
  조건문에 빈 문자열 "" 가 있으므로 False 변환 -> 12행의 else 구문 실행

pass 키워드

  • 프로그래밍의 전체 골격을 잡아놓고 내부에서 처리할 내용을 차근차근 만들 때 사용하는 구조

    • 골격: 조건문, 반복문, 함수, 클래스 등의 기본 구문
    • 아직 아무것도 하지 않음의 의미
     예시
       if zero == 0
         빈 줄 삽입
    
       else :
         빈 줄 삽입

raise NotImplemented Error

  • pass 키워드를 입력하고 잊어버렸을 때를 대비해 강제로 오류를 발생시키는 것
   number = input("정수 입력> ")
   number = int(number)

   if number > 0:
       # 양수일 때
       raise NotImplementedError

   else:
       # 음수일 때
       raise NotImplementedError

마무리문제


도전 문제

profile
2024, 개발자가 되기로 했습니다.

0개의 댓글