본문 바로가기

파이썬 기초

03 -1 if문

if문을 쓰는이유?

 

프로그래밍도 사람이 하는 것이므로 조건을 판단한 후 그 상황에 맞게 처리해야 할 경우가 생긴다.

이렇듯 프로그래밍에서 조건을 판단하여 해당 조건에 맞는 상황을 수행하는데 쓰는 것이 바로 if문이다.

(아래 예문을 보자)

 

"돈이 있으면 택시를 타고, 돈이 없으면 걸어 간다."   (조건 판단 후 상황에 맞게 처리해야 함.)

 

money = True
if money:
...   print("택시를 타고 가라")
...else:
...   print("걸어 가라")
...
택시를 타고 가라

들여쓰기 와 콜론 사용해야 오류가 없다.

money = True
if money:
    print("택시를")
    print("타고")
    print("가라")
    택시를
    타고
    가라

spacebar 4번 , : (콜론)

 

- 비교 연산자

x=3
y=2
x>y
True

ex)

" 만약 3000원 이상의 돈을 가지고 있으면 택시를 타고 그렇지 않으면 걸어 가라. "

money = 2000
if money >= 3000:
    print("택시를 타고 가라")
else:
    print("걸어 가라")
    걸어 가라

money >=3000 조건문이 거짓이 되기 때문에 else문 다음 문장을 수행하게 된다.

 

- and, or, not

조건을 판단하기 위해 사용하는 다른 연산자로는 and, or, not이 있다. 각각의 연산자는 다음처럼 동작한다.

 

ex)

" 돈이 3000원 이상 있거나 카드가 있다면 택시를 타고 그렇지 않으면 걸어 가라. "

money=2000
card=True
if money >= 3000 or card:
    print("택시를 타고 가라")
else:
    print("걸어 가라")
    
    택시를 타고 가라

- x in s, x not in s

 

1 in [1,2,3]
True
1 not in [1,2,3]
False

~in 의 뜻이 '~안에'라는 것을 생각하면 쉽게 이해 된다.

 

ex) 튜플과 문자열에 적용한 예

'a' in ('a','b','c')
True
'j' not in 'python'
True

ex) 계속 사용해 온 택시 예제에 in을 적용해 보자

"만약 주머니에 돈이 있으면 택시를 타고, 없으면 걸어가라."

poket = ['paper','cellphone','money']
if 'money' in poket:
    print("택시를 타고 가라")
else:
    print("걸어 가라")
    
    택시를 타고 가라

-다양한 조건을 판단하는 elif

 

"주머니에 돈이 있으면 택시를 타고, 주머니에 돈은 없지만 카드가 있으면 택시를 타고, 돈도 없고 카드도 없으면 걸어 가라."

 

ex) if와 else로만 표현하기. [ 복잡하다..] 그렇기에 elif를 씀.

 

poket=['paper','cellphone']      주머니 안에 종이, 휴대전화가 있다.
card = True                      카드를 가지고 있다.
if 'money' in poket:
    print("택시를 타고 가라")
else:
    if card:
        print("택시를 타고 가라")
    else:
        print("걸어 가라")
        
        택시를 타고 가라

ex) elif를 사용

 

poket=['paper','cellphone']
card = True
if 'money' in poket:                   주머니에 돈이 있으면
    print("택시를 타고 가라")
else:
    if card:                           주머니에 돈이 없고 카드가 있으면
        print("택시를 타고 가라")
    else:                              주머니에 돈도 없고 카드도 없으면
        print("걸어 가라")
        
        택시를 타고 가라

즉 elif는 이전 조건문이 거짓일 때 수행된다. 

 

- 조건부 표현식

if score >= 60:
    message = "success"
else:
    massage = "failure"
    
    

주건부 표현식을 사용하면 아래와 같이 간단해진다.

message = "success" if score >= 60 else "failure"

조건부 표현식은 가독성에 유리하고 한 줄로 작성할 수 있어 활용성이 좋다.

 

출처: "점프 투 파이썬"

'파이썬 기초' 카테고리의 다른 글

03-3 for문  (0) 2021.03.14
03-2 while문  (0) 2021.03.14
02-8 자료형의 값을 저장하는 공간, 변수  (0) 2021.03.13
02-7 불 자료형  (0) 2021.03.13
02-6 집합 자료형  (0) 2021.03.13