[이것이 취업을 위한 코딩 테스트다 with 파이썬] Chapter 07. 조건문

jieunee·2023년 2월 28일
0

1. 조건문의 기본

  • 파이썬에서 조건문을 작성할 때는 if ~ elif ~ else 문을 사용한다.
  • 조건문 작성 시, 코드의 블록을 들여쓰기로 설정
    • 들여쓰기는 Tab 으로 진행해도 되지만, 가급적이면 Space 4번을 이용하기

      # 출력값 : 학점: B
      score = 85
      if score >= 90:
          print("학점: A")
      elif score >= 80:
          print("학점: B")
      elif score >= 70:
          print("학점: C")
      else:
          print("학점: F")

2. 비교 연산자

  • 비교 연산은 두 값을 비교할 때 이용
    비교 연산자설명
    X == YX와 Y가 서로 같을 때 참
    X ! = YX와 Y가 서로 다를 때 참
    X > YX가 Y보다 클 때 참
    X < YX가 Y보다 작을 때 참
    X > = YX가 Y보다 크거나 같을 때 참
    X < = YX가 Y보다 작거나 같을 때 참

3. 논리 연산자

  • 2개의 논리 값 사이의 연산을 수행할 때 사용
    논리 연산자설명
    X and YX와 Y가 모두 참일 때 참
    X or YX와 Y 중 하나만 참이어도 참
    not XX가 거짓일 때 참

4. 비트 연산자

  • 비트(bit) 단위로 논리 연산을 할 때 사용
    연산자설명
    %AND 연산, 둘 다 참이어야 만족
    ^XOR 연산, 둘 중 하나만 참이어야 만족
    ~보수 연산 (부호가 반대로 되는 것)
    <<왼쪽 시프트 연산자, 변수 값을 왼쪽으로 지정된 비트 수 만큼 이동
    >>오른쪽 시프트 연산자, 변수 값을 오른쪽으로 지정된 비트 수 만큼 이동

5. 파이썬의 기타 연산자

  • in 연산자와 not in 연산자를 제공
    • 자료형 안에 어떠한 값이 존재하는지 확인하는 연산

    • 리스트, 튜플, 문자열, 사전과 같은 자료형에서 사용

      in 연산자와 not in 연산자설명
      X in 리스트리스트 안에 X가 들어가 있을 때 참
      X not in 문자열문자열 안에 X가 들어가 있지 않을 때 참
  • 조건문의 값이 참이라 해도, 아무것도 처리하고 싶지 않을 때 pass 문을 사용한다.
    # 출력문 : 프로그램을 종료합니다.
    score = 85
    
    if score >= 80:
        pass # 나중에 작성할 소스코드
    else:
        print('성적이 80점 미만입니다')
    print('프로그램을 종료합니다.')
  • 조건문에서 실행될 소스코드가 한 줄일 경우, 줄 바꿈을 하지 않아도 간략하게 표현 가능
    # 출력문 : Success
    score = 85
    
    if score >= 80: result = "Success"
    else: result = "Fail"
  • 조건문 표현식을 사용하면 if ~ else문을 한 줄에 작성 가능
    • 조건문의 왼쪽엔 True 일 경우의 출력값을, 오른쪽에는 False 일 경우의 출력값을 작성한다.

      # 출력문 : Success
      score = 85
      result = "Success" if score >= 80 else "Fail"
      
      print(result)
  • 파이썬 내에서는 다른 언어와 달리 조건문 내에서 수학의 부등식을 그대로 사용 가능하다.
    # 보통 방식으로 쓰이는 경우
    x = 15
    if x > 0 and x < 20:
        print("x는 0 이상 20 미만의 수입니다.")
    
    # 수학의 부등식을 그대로 쓰인 경우
    x = 15
    if 0 < x <20:
        print("x는 0 이상 20 미만의 수입니다.")
profile
Back-End Developer 🌱

0개의 댓글