반응형

안녕하세요, 왕초보 코린이를 위한 코딩유치원에 오신 것을 환영합니다.

 

 

[코딩유치원 기초문법 강의]

 

2021.03.09 - [파이썬 기초/기초 문법] - [코딩유치원] 파이썬 기초 문법 1편_프로그래밍과 코딩의 정의, 그리고 자료형

2021.03.11 - [파이썬 기초/기초 문법] - [코딩유치원] 파이썬 기초 문법 2편_문자열 자료형

2021.03.11 - [파이썬 기초/기초 문법] - [코딩유치원] 파이썬 기초 문법 3편_변수란 무엇일까?

2021.03.12 - [파이썬 기초/기초 문법] - [코딩유치원] 파이썬 기초 문법 4편_리스트 자료형

2021.03.12 - [파이썬 기초/기초 문법] - [코딩유치원] 파이썬 기초 문법 5편_튜플, 딕셔너리 자료형

2021.03.13 - [파이썬 기초/기초 문법] - [코딩유치원] 파이썬 기초 문법 6편_집합, 불 자료형

2021.03.14 - [파이썬 기초/기초 문법] - [코딩유치원] 파이썬 기초 문법 7편_제어문(if문)

2021.03.15 - [파이썬 기초/기초 문법] - [코딩유치원] 파이썬 기초 문법 8편_제어문(while문)

2021.03.16 - [파이썬 기초/기초 문법] - [코딩유치원] 파이썬 기초 문법 9편_제어문(for문)

2021.03.17 - [파이썬 기초/기초 문법] - [코딩유치원] 파이썬 기초 문법 10편_함수, 모듈, 패키지 개념 총정리

2021.03.18 - [파이썬 기초/기초 문법] - [코딩유치원] 파이썬 기초 문법 11편_함수 사용법

2021.03.19 - [파이썬 기초/기초 문법] - [코딩유치원] 파이썬 기초 문법 12편_모듈 사용법

 

코딩유치원에서는 기초 문법을 하나하나 자세히 다루기보다는 개념에 대해 간략히 설명하고 넘어갈 예정입니다.

마치 영어를 시작할 때, 문법만 주구장창 공부하다가 영어에 흥미를 잃어버리는 것과 같이 코딩도 마찬가지라고 생각하기 때문입니다.

문법을 자세히 다루는 곳은 구글에서 조금만 검색해도 많이 나올뿐만 아니라, 나중에 필요할 때마다 찾아보는 것이 더 효율적입니다!


지난시간 드디어 자료형을 끝내고 오늘부터는 프로그램 구조의 뼈대가 되는 제어문에 대해서 공부해보겠습니다.


제어문

오늘부터 세 편에 걸쳐서 제어문에 대해 공부해볼텐데요. 제어문에는 if, while, for 제어문이 있습니다. 간략히 이 세 가지의 제어문에 대해서 설명한 다음, 차례대로 자세하게 다루어보도록 하겠습니다.

 

C언어에서의 제어문 (출처. pixabay)

 

if문

- 어떤 조건이 True냐 False냐를 판단한 후, 판단 결과에 따라 의도된 코드를 실행할 때 사용하는 제어문

- 판단 결과가 참이든 거짓이든 의도된 코드를 실행한 후, 다음 코드를 실행

 

while문

- 어떤 조건이 참일 때, 의도된 행동을 반복시키기 위해 사용하는 제어문

- 코드가 계속 실행되다가 조건이 거짓이 될 때, while문을 빠져나가서 다음 코드를 실행

 

for문

- 같은 코드를 원하는 만큼 반복하기 위해 사용하는 제어문

- 위의 두 제어문과 달리 어떠한 조건을 판단하지 않는 것이 특징

 

 

If문

if은 한글로 번역하면 '만약에'입니다. 우리는 살면서 종종 이런 말을 합니다.

 

"만약에 내가 복권에 당첨되면, 집을 사고, 차를 살거야"

 

이 말을 파이썬 if문으로 바꾸어보겠습니다.

if 복권에 당첨되면:
   print("집을 산다")
   print("차를 산다")

 

이렇게 우리는 어떤 상황이 일어난다면, 다음 행동으로 무엇을 할지 생각하고는 합니다. 미리 생각해두지 않는다면 당황할 것이고, 즉각적으로 행동하지 못할 것입니다.

 

컴퓨터는 어떨까요? 컴퓨터는 스스로 생각하지 못하기 때문에 사람이 직접 일어날 법한 일들을 예상하고, 그에 따라 컴퓨터가 어떠한 행동을 수행할 수 있도록 코드로 작성해주어야 합니다. 그것이 곧 프로그래밍이라고 할 수 있습니다.

 

If문의 기본 구조

 

if문의 기본 구조는 아래와 같습니다.

 

if 조건문:
    수행할 코드 1     
    수행할 코드 2     
   
else:
    수행할 코드 3
    수행할 코드 4
   

 

if라는 것은 위에서 봐서 알겠는데 else라는 것은 무엇일까요? 우리는 상황이 의도대로 흘러가지 않는 경우, "Plan B를 실행한다"라는 말을 하곤 하죠. else가 바로 상황이 의도대로 흘러가지 않은 경우(조건이 거짓일 때)를 의미하며, 그 아래의 수행할 코드들이 plan B가 되는 것입니다.

 

elif문

 

만약 Plan C, Plan D까지 생각해두고 싶다면 어떻게 해야할까요? 이 역시 파이썬에서 elif라는 개념을 준비해두었습니다.

elif엔 else와 다르게 조건문이 필요한 것 주의하세요!

if 조건문1:
    수행할 코드 1     
    수행할 코드 2    
   
elif 조건문2:        #elif에 갯수 제한은 없음
    수행할 코드 3
    수행할 코드 4
    
elif 조건문3:
    수행할 코드 5
    수행할 코드 6
    
else:              #마지막은 반드시 else
    pass           #pass는 아무것도 실행하고 싶지 않을 때 넣어줌. (아무것도 안넣으면 error)
   

참고로, 어떤 조건이 참일 때, 아무것도 실행시키고 싶지 않을 때는 pass 명령어를 입력해줍니다.

 

조건문

조건문이란 참과 거짓을 판단하는 문장을 뜻합니다. 조건문은 아무리 복잡해도 결국 True/False  둘 중 하나인 불 자료형입니다.

 

 

1) 비교연산자

x < y x가 y보다 작다
x > y x가 y보다 크다
x <= y x가 y보다 작거나 같다
x >= y x가 y보다 크거나 같다
x == y x와 y가 같다
x != y x와 y가 같지 않다

 

age = 31

if age >= 30:      # 조건문
    print("내가 30대라니..")
    
else:
    print("아직 20대!")
    

 

 

2) and, or, not

x and y x와 y 모두 참이어야지 참이다
x or y x와 y 둘 중에 하나라도 참이면 참이다
not x x가 거짓이면 참이다

 

a = 1
b = 2

if a==1 or b>2:      # a가 1이거나 b가 2보다 크면 참
    print("재밌는 예가 안떠올라..")
    
else:
    print("나중에 떠오르면 예시 바꿔야지")
    

 

If문 사용 시 주의점

if문에 익숙하지 않을 때 자주하는 실수는 크게 2가지 입니다. if문을 작성했는데 에러가 난다면 아래 사항들을 확인해보세요.

 

1) 조건문 끝에 :(콜론)을 붙이지 않음

    --> 터미널 창에 invalid syntax(불가능한 구문)이 출력됨

 

2) 수행할 코드의 들여쓰기(Indentation) 불량

     --> 터미널 창에 unexpected indent(예기치 못한 들여쓰기)라고 출력됨

 

참고로, 들여쓰기는 스페이스 한 번만 해도 작동을 하지만 통상적으로 스페이스 4번을 사용합니다.

우리가 사용하고 있는 VS Code는 if문을 작성하고 엔터를 치면, 자동으로 들여쓰기를 해준다는 점 참고하세요.

 


 

오늘은 3가지 제어문 중에 if문에 대해서 배워보았습니다.

 

if문은 자료형 만큼이나 중요한 기초이므로 꼭 이해하고 넘어가시면 좋겠습니다.

 

오늘도 공부하시느라 고생많으셨습니다~!

 

 

반응형

+ Recent posts