[Python] 4. If문 (흐름과 제어)

Wonder_Land🛕·2022년 6월 14일
0

[Python]

목록 보기
4/12
post-thumbnail
  1. if문
  2. if ~ else 문
  3. if ~ elif ~ else 문
  4. Q&A
  5. 마치며

프로그램을 만들다보면 Yes or No 라고 답해야 하는 경우가 많습니다.
이렇게 Yes or No와 같은 대답을 기반으로 작업 수행을 정하는 문장을 조건문이라고 합니다.
Python에서는 조건문으로 if문을 제공하고 있습니다.


1. if문

  • if문 : 어떤 조건을 만족하는 경우, 명령문을 수행하기 위해 사용

if문에 대한 결과로는 True와 False가 있으며, True를 반환할 경우 명령문을 실행하고, False를 반환할 경우 명령문을 실행하지 않습니다.

1) if문의 문법

(1) 형식

if 조건식 : 
	명령문
    명령문
    ... 
  • 명령문의 모음을 코드 블럭이라고 하는데, if문 조건식이 True일 경우 수행할 명령문을 코드 블록으로 구성해 기술해야 합니다.

(2) if문의 들여쓰기

  • 코드 블럭들은 동일한 수준의 들여쓰기(Tab 또는 공백)를 일관되게 사용할 것을 권장하고 있습니다.

Python에서는 코드 블럭을 동일한 수준의 들여쓰기를 하는 것이 매우 중요한데요

score = 80
if score >= 60:
    print("%d 점" %score)
     print("합격입니다.")

[Result]
SyntaxError: unexpected indent
위의 예시에서 보면,
3번째와 4번째는 동일 수준의 코드이지만, 다른 들여쓰기 때문에 Error를 일으키고 있음을 알 수 있습니다.

(3) if문의 예외

if 조건식 : 명령문

이처럼, 명령문을 조건식과 같은 줄에 쓸 수 있지만,

  • 수행할 명령문이 단순하고
  • 해당 문장들이 가독성에 문제가 없을 경우

에만 사용하는 것이 좋습니다.
따라서, 복잡하거나 가독성에 문제가 있을 경우에는 다른 줄에 작성하는 것이 좋겠죠?

if score >= 60: result = "합격"; print(result)

[Result]
합격

위의 예시처럼, 여러 명령문을 하나의 줄에 쓰게 되면 가독성에 문제가 생기기 쉽습니다.

한편, Python에서는 문장의 끝을 표시하는 ;을 생략할 수 있습니다. 하지만 둘 이상의 문장을 한 줄에 기술할 경우에는 명시적으로 기술해야 합니다.


2. if ~ else문

  • if ~ else문
    : 어떤 조건을 만족하는 경우의 명령문만족하지 않았을 경우의 명령문상호 배타적으로 수행하고자 할 때 사용

if문에 대한 결과로는 True와 False가 있으며, True를 반환할 경우 명령문1을 실행하고, False를 반환할 경우 else문을 실행합니다.

(1) 형식

if 조건식 : #True일 때 실행
	명령문
    명령문
    ... 
else 키워드 :	#False일 때 실행
	명령문
    명령문
    ...
score = 80
if score >= 60:
    print("합격")
else:
    print("불합격")

[Result]
합격
위의 예시를 통해 다음을 알 수 있습니다.

  • if문의 명령문과 else문의 명령문은 상호 배타적으로 동작하기 때문에, else문의 명령문은 실행되지 않습니다.
  • if문의 명령문과 else문의 명령문 역시 동일한 수준의 들여쓰기를 유지해야 합니다.

3. if ~ elif ~ else문

  • if ~ elif ~ else문
    : 2개 이상의 다중 조건을 처리하고자 할 때 사용

if문과 elif문에 대한 결과로는 True와 False가 있으며, if문에서 True를 반환할 경우 명령문1을 실행하고, False를 반환할 경우 elif문을 실행합니다.
elif 문에서 True를 반환할 경우 명령문2를 실행하고, False를 반환할 경우 else문을 실행합니다.

(1) 형식

if 조건식1 : #True일 때 실행
	명령문
    명령문
    ... 
elif 조건식2 :	#False일 때 실행
	명령문
    명령문
    ...
else :
	명령문
    명령문
    ...

여기서 elif문은 여러 번 사용할 수 있습니다.

score = 80
if score >= 90:
    grade = "A"
elif score >= 80:
    grade = "B"
elif score >= 70:
    grade = "C"
else:
    grade = "F"

if문, elif문, else문의 각 명령문은 상호 배타적으로 동작합니다.


4. Q&A

-


5. 마치며

오늘은 프로그래밍에 있어 기초가 되는 if문에 대해 살펴봤습니다.
if문은 특정 조건 하에 원하는 명령을 실행하기 위해서 사용되는데요, 이는 개발자가 원하는 방향으로 코딩을 할 수 있게 해줍니다.
그만큼 중요한 구문이기 때문에 여러 가지 문제들을 통해, 능숙하게 응용할 수 있도록 공부하겠습니다!!😎

[Reference] : 위 글은 다음 내용을 참고, 인용하여 만들어졌습니다.

  • 전반적 내용 : 삼성 SW Expert Academy
profile
아무것도 모르는 컴공 학생의 Wonder_Land

0개의 댓글