[Python] 10. if 문(if statements)

2023. 11. 5. 04:03·Programming Language(Sub)/Python

if 문 (if statements)


if문의 기본구조

if 조건문:
    수행할 문장 1
    수행할 문장 2

else:
    수행할 문장 A
    수행할 문장 B
  • 들여쓰기를 할 때 공백 4개, 탭 중 하나만 선택해서 사용하자.(혼용할 시 에러 발생)

  • 조건문 다음에 반드시 콜론을 붙히자.

조건문

: 어떤 조건이 주어질 때 True(참) 인지 False(거짓) 인지 판단하는 문장

  • 비교 연산자

    • bool 값을 반환한다 (C와 동일)
  • and, or, not

    • x or y # x와 y 둘 중 하나만 참이여도 참

    • x and y # x와 y 둘다 참이어야 참

    • not x # x가 거짓이면 참

  • x in s, x not in s

    • s 객체가 x 객체를 포함하고 있는지 판단
    1 in [1, 2, 3]
    res : true
    
    'j' not in 'python'
    res : true
    
    pocket = ['card', 'money', 'phone']
    if 'card' not in pocket:
        print("걸어가세요")
    else:
        print("버스를 타세요")
  • 조건문에서 아무 일도 하지 않게 하려면?

    • 수행할 문장 대신에 pass를 사용한다.
  • elif(c의 else if)

    • 여러 조건을 판별할 때 사용
    if 조건문:
        수행문장 1-1
        수행문장 1-2
    elif 조건문:
        수행문장 2-1
        수행문장 2-2
    elif 조건문:
        수행문장 3-1
        수행문장 3-2
    else:
        수행문장 4-1
        수행문장 4-2
  • if문 한줄로 작성하기

    if 'money' in pocket: pass
    else: print("카드를 꺼내라")

조건부 표현식

  • If문을 조건부 표현식을 통해 대신 표현할 수 있다.

    if score >= 60:
        message = "success"
    else:
        message = "failure"

    위 코드를 조건부 표현식을 이용하여

    message = "success" if score >= 60 else "failure"

    위와 같이 표현 가능하다

  • Ternary Operator(삼항 연산자)와 사실상 동일한 개념이다.

예시) 조건부 표현식을 이용한 팩토리얼 구현

n = 5
result = 1 # initial value
if (n < 0):
    pass
elif (n == 0):
    pass
else:
    while n > 0: # 5, 4, 3, 2, 1, 0(False)
        result = result * n
        n = n - 1

참조) Do it! 점프 투 파이썬 (박응용 지음)

'Programming Language(Sub) > Python' 카테고리의 다른 글

[Python] 12. for 문(for statements)  (0) 2023.11.05
[Python] 11. while 문(while statements)  (0) 2023.11.05
[Python Advanced] Object(객체) 저장 구조에 대한 탐구  (0) 2023.11.05
[Python] 09. 변수(Variable)  (0) 2023.11.05
[Python] 08. 불(bool) 자료형  (0) 2023.11.05
'Programming Language(Sub)/Python' 카테고리의 다른 글
  • [Python] 12. for 문(for statements)
  • [Python] 11. while 문(while statements)
  • [Python Advanced] Object(객체) 저장 구조에 대한 탐구
  • [Python] 09. 변수(Variable)
lumana
lumana
배움을 나누는 공간 https://github.com/bebeis
  • lumana
    Brute force Study
    lumana
  • 전체
    오늘
    어제
    • 분류 전체보기 (462)
      • 개발 일지 (0)
        • Performance (0)
        • TroubleShooting (0)
        • Refactoring (0)
        • Code Style, Convetion (0)
        • Architecture (0)
      • Software Engineering (36)
        • Test (8)
        • 이론 (18)
        • Clean Code (10)
      • Java (72)
        • Basic (5)
        • Core (21)
        • Collection (7)
        • 멀티스레드&동시성 (13)
        • IO, Network (8)
        • Reflection, Annotation (3)
        • Modern Java(8~) (13)
        • JVM (2)
      • Spring (53)
        • Framework (12)
        • MVC (23)
        • Transaction (3)
        • AOP (11)
        • Boot (0)
        • AI (0)
      • DB Access (16)
        • Jdbc (1)
        • JdbcTemplate (0)
        • JPA (14)
        • Spring Data JPA (0)
        • QueryDSL (0)
      • Computer Science (130)
        • Data Structure (27)
        • OS (14)
        • Database (10)
        • Network (21)
        • 컴퓨터구조 (6)
        • 시스템 프로그래밍 (23)
        • Algorithm (29)
      • HTTP (8)
      • Infra (1)
        • Docker (1)
      • 프로그래밍언어론 (15)
      • Programming Language(Sub) (76)
        • Kotlin (0)
        • Python (25)
        • C++ (51)
        • JavaScript (0)
      • FE (11)
        • HTML (1)
        • CSS (9)
        • React (0)
        • Application (1)
      • Unix_Linux (0)
        • Common (0)
      • PS (13)
        • BOJ (7)
        • Tip (3)
        • 프로그래머스 (0)
        • CodeForce (0)
      • Book Review (4)
      • Math (3)
        • Linear Algebra (3)
      • AI (7)
        • DL (0)
        • ML (0)
        • DA (0)
        • Concepts (7)
      • 프리코스 (4)
      • Project Review (6)
      • LegacyPosts (11)
      • 모니터 (0)
      • Diary (0)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.4
lumana
[Python] 10. if 문(if statements)
상단으로

티스토리툴바