SiLaure's Data

[Python] 09. Python 기초 문법 - Conditional Statement(IF) 본문

Records of/Learning

[Python] 09. Python 기초 문법 - Conditional Statement(IF)

data_soin 2021. 7. 21. 22:03

 

 

- if 를 왜 쓰는가?

· Python을 왜 쓰는가? --컴퓨터에게 일을 시키려고

· 일을 시키기 위해서는 프로그래밍을 해야 한다.

· 프로그래밍으로 데이터를 다루기 위해 데이터 타입을 알아야 한다.

· 데이터에 변수를 담아서 컴퓨터에게 일을 시킨다.

· 일을 시키는 과정 -구체적으로 명령내리고 제어하는 것-이 if

· 위의 과정이 쌓이면 곧 프로그래밍이다.

 

 면이 땡길 땐 이거,,, 밥이 땡길 땐 저거,,,,,

- Control statement란?
· 프로그램의 흐름을 제어하는 명령어
· 프로그램의 흐름 = 컴퓨터가 어떤 일을 해야하는지에 대한 과정.

- 조건과 반복에 따라서 프로그램의 진행 과정이 바뀌게 된다.
· 프로그램은 조건과 반복의 나열

- 조건(Conditional Statement)로는 if문
· if, elif, else

- 반복(Iterative Statement)로는 while, for문
· while, for

** 프로그래밍이란 데이터를 사용자가 원하는대로 제어하여 원하는 결과를 내는 과정이다.

 

- If statement (조건문)

· 프로그램에서 가장 중요한 조건 판단이다.
· 모든 프로그램은 조건을 판단하여 다음 진행 과정을 결정한다.
· 파이썬은 if, elif, else 구문을 이용하여 조건을 사용할 수 있다.

 

- 파이썬에서 if문을 사용하는 방법

e.g.

a = 5
# a가 5인데, a가 5와 같으면, True를 출력하고 싶다.
if a == 5 :
    print(True)

** inventation이 중요!! --tab을 사용하여 구문을 이해하기 쉽게 정리하는 것

 

- 조건문을 사용하기 위해선, 비교연산과 논리연산을 알아야 한다.

· 비교연산과 논리연산의 공통점 : 결과가 무조건 참(True) 또는 거짓(False)

 

자판기를 만들어보자.

REMIND

자판기에 들어갈 프로그램을 만들어야 한다. 자판기에 입력된 돈이 300원이면 커피를 주고, 300원보다 적은 경우엔 돈을 그냥 돌려주고, 300원보다 많은 경우에는 커피와 함께 거스름돈을 주어야 한다. 이를 어떻게 구현할 수 있을까?

 

# 돈이 300원인데, 돈이 300원이랑 같으면 coffee를 준다.

money = 300
if money == 300 :
  print("Coffee")
====================
Coffee

 

# 돈이 200원 있다. 그러면 어떻게 해야할까?

money = 200
if money < 300 :
  print("거스름돈은 %d원 입니다." % money)
====================
거스름돈은 200원 입니다.

# 돈이 1000원이 있는 경우에는?

money = 1000
if money > 300 :
   print("Coffee.")
   print(f"거스름돈은 {money-300} 입니다.")
====================
Coffee.
거스름돈은 700 입니다.

 

 

자판기 코드 다시 생각해보기

if문에는 if가 아닌 경우에 해당하는 조건을 체크할 수 있는 elif(else if) 구문이 있다.

모든 if, elif 조건에 체크되지 않는 나머지 경우를 처리하는 else 구문도 있다.

이를 자판기 예제에 다시 적용해보자.

# 돈이 300원인데, 돈이 300원이랑 같으면 coffee를 준다.

money = 500
if money == 300 :
   
print("Coffee")
elif money < 300 :

   print("거스름돈은 %d원 입니다." % money)
else :
   
print("Coffee.")
   
print(f"거스름돈은 {money-300} 입니다.")

====================
Coffee.

거스름돈은 200 입니다.

 

 

if-elif-else 말고 nested 구조를 이용해 작성해보자.

# if 안에 if를 사용해서 똑같은 구문을 만들어 보라는 게 무슨 말이죠...?,,ㅡㅡ;

money = 500
if money == 300 :
  print("Coffee")
  else :
      if money < 300 :

        print("거스름돈은 %d원 입니다." % money)
  else :
     print("Coffee.")
print(f"거스름돈은 {money-300} 입니다.")
====================
Coffee.
거스름돈은 200 입니다.

# 아~~~ 투입 금액이 300원이 아닐 때를 300원보다 적을 때와 많을 때로 나누어서 쓰는 걸 말하는 거군,,.

 

Comments