ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 파이썬 : (4) 조건문과 예외처리
    학습기록 : 프로그래밍 2024. 7. 7. 20:42

    오늘은 조건문 (if, else, elif)와 예외처리 (try, except)에 대해 공부한다.

    조건문 if, else : 단일 분기문

    x = 3
    
    if x == 5 : 
        print('같습니다.')
    else :
        print('다릅니다.')
    
    >>> 다릅니다.
    • 코드 실행 : 위의 코드에서 x = 3이므로, 첫 번째 if문 (x == 5)는 거짓(false)이다. 따라서 if문은 실행되지 않고, 다음 줄인 else문이 실행된다.

    • if는 첫번째 조건문에 쓰고, 그 다음 조건문은 else를 쓴다.

    • if와 else 예약어를 작성한 줄에는 꼭 콜론(:)을 써야한다.

    • if, else를 쓴 다음 줄은 들여쓰기 해주어야 한다. (보통은 자동으로 들여쓰기가 되고, 필요할 땐 Tabs 키를 눌러주면 된다.)

      • 들여쓰기가 되었다는 것은 해당 if문에 포함된다는 뜻이다.
      • 아래 예시를 보면 첫번째 if문에는 동일한 들여쓰기가 진행된 print('같습니다.'), 두 번째 if문 (x<5)이 포함되어 있으며 순서대로 실행된다.
        x = 3 
        

      if x == 5 :

      print('같습니다.') 
      if x < 5 : 
          print('작습니다.') 

      else :

      print('다릅니다.')
      
      

    조건문에 쓰는 기호들

    < : ~(좌변)보다 작은가?  
    <= : ~보다 작거나 같은지?  
    == : ~와 같은지?
    >= : ~보다 크거나 같은지?  
    > : ~보다 큰가?  
    != : ~와 같지 않은가?

    조건문 if, elif, else : 다중 분기문

    x = 5  
    if x < 2 :  
        print('작음')  
    elif x < 10 :  
        print('중간')  
    else :  
        print('실행 완료')
    • 첫번째 조건이 참이면 이 조건만 실행되고 끝난다.
    • 첫번째가 거짓, 두번째 조건이 참이면 두번째 조건까지 실행되고 끝난다.
    • 첫번째와 두번째가 거짓, 세번째 조건이 참이면 모든 조건이 순서대로 실행되고 끝난다. 즉 앞의 모든 조건이 거짓이면 else가 실행된다.

    예외처리 : try, except

    • traceback 에러가 뜰 수도 있다고 예상되는 곳에 예외처리를 한다.
    • 에러일 경우 대신 실행될 코드를 주어 코드 실행이 중단되지 않도록 만드는 것이다.
    • 아래 코드에서 try 조건에 있는 str = int(word)는 실행이 불가한 오류이다. 이럴 땐 except문이 실행된다.
    word = 'Hello Jay'  
    try:  
        str = int(word)  
    except:  
        str = -1
    
    print('first', word)
    • 다음 코드에서 try 조건에 있는 str = int(word)는 실행이 가능한 코드이므로, try문에서 실행이 종료된다. (except문이 실행되지 않는다.)
    • except는 try 조건이 실행 불가(오류)일 때만 실행된다.
    word = '123'  
    try:  
        str = int(word)  
    except:  
        word = -1
    
    print('second', word)

    다음은 현실적인 조건문과 예외처리 예시이다.

    number = input('Enter a number: ') # 사용자에게 숫자를 입력 받음  
    
    try: # 정수로 바꿈 -> 가능하면 if문으로 넘어가서 실행  
        num = int(number) # -> 불가능하면(오류) except문 실행  
    except:  
        num = -1
    
    if ival > 0 :  
        print('성공')  
    else :  
        print('실패')
Designed by Tistory.