본문 바로가기

파이썬 조건문 if 문

액트 2022. 4. 28.
반응형

if-else 문

문법

if 조건식:
    조건식의 결과가 참(True)일 때만 실행되는 명령문
else:
    조건식의 결과가 거짓(False)일 때만 실행되는 명령문

if-else 문은 if 키워드 뒤에 위치한 조건식의 결과에 따라 실행되는 명령문이 달라집니다.

조건식의 결과가 참(True)인 경우에는 if 문 바로 다음의 명령문들이 실행되며, else 문 다음의 명령문들은 실행되지 않습니다.

반대로 조건식의 결과가 거짓(False)인 경우에는 else 문 바로 다음의 명령문들이 실행되며, if 문 바로 다음의 명령문들은 실행되지 않습니다

 

파이썬에서 블록(block)은 콜론(:)으로 시작하여 동일한 들여쓰기(indentation) 구간을 의미하므로, if 키워드와 else 키워드의 맨 끝에도 반드시 콜론(:)을 삽입해야 합니다.

if 문은 단독으로도 사용할 수 있지만, else 문은 반드시 if 문과 함께 사용해야 합니다.

예제.

number = 1

if number == 1:
    print("정답")
else:
    print("오답")
    


결과값: 정답

if-elif-else 문

if-else 문만으로는 우리가 실제로 구현해야 하는 복잡한 조건들을 제대로 표현하는 것이 매우 힘들고 어렵습니다.

문법

if 조건식1:
    조건식1의 결과가 참(True)일 때만 실행되는 명령문
elif 조건식2:
    조건식2의 결과가 참(True)일 때만 실행되는 명령문
else:
    조건식1, 2의 결과가 모두 거짓(False)일 때만 실행되는 명령문

elif 문도 else 문과 마찬가지로 반드시 if 문과 함께 사용해야 합니다.

예제

number = 3

if number == 1:
    print("오답")
elif number == 2:
    print("오답")
elif number == 3:
	print("정답")
    


결과값: 정답

대부분의 프로그래밍 언어에서 제공하는 또 다른 조건문인 switch-case 문을 파이썬에서는 별도로 제공하지 않습니다.

파이썬에서는 switch-case 문 대신 elif 문을 사용하도록 권고하고 있습니다.


pass 키워드로 아무 일도 하지 않기

조건문에서는 상황에 따라 어떠한 명령문도 수행하지 않고 그냥 넘어가야할 경우가 생길 수 있습니다.

다른 프로그래밍 언어에서는 이와 같은 경우 조건문 내부에 아무런 명령문도 명시하지 않으면 되지만, 파이썬에서는 조건문 내부에 명령문이 하나라도 존재하지 않으면 에러가 발생합니다.

따라서 파이썬에서는 이런 경우 사용할 수 있도록 pass라는 키워드를 별도로 제공하고 있습니다. pass 키워드는 다른 어떤 동작도 수행하지 않습니다.

number = 1

if number == 2:
    PASS
else:
    print("오답")
    


결과값:

위의 예제에서 pass 문을 삭제하면 IndentationError 에러가 발생하는 것을 확인할 수 있습니다.

 

출처: TCPSchool.com

반응형

댓글