Python

[Python] 파이썬 if문 사용법과 예제

Let it out 2024. 2. 7. 14:35

if문 이란?

if문은 조건을 충족한다면 수행 하라는 조건문이다.
 
아래 그림처럼 조건문참(true)이면 선택문1을 실행하고 거짓(false)이면 선택문 2를 실행하는 방식이다.
 
우선 대충 그렇구나 하고 넘어가자.
 

 

 
 

if문의 기본 형태

if, else 두 개로 if문을 만드는 것이 기본적인 형태다.
 
첫 출부터 아래로 내려가면서 실행되며, 조건을 만족하면 해당 조건문안에 코드가 실행된다.
 
아래 예제 2번째 줄을 보면 89 보다 score가 크기 때문에 해당 조건문은 참이 되고  print("A등급")이 실행된다.
 
2번째 줄의 조건문이 만족했기 때문에 5번째 줄 else문은 실행되지 않는다.
score = 90

if 89 < score: # '<=' 기호는 "같거나 크다." 로 사용된다.
    print("A등급")
else:
    print("낙제")
결과 : A등급

 

주의 : if문을 사용할 때 : (콜론) 을 꼭 조건문 뒤에 붙여야 한다.

 


 

elif 활용하기

바로 위에 예제는 하나의 조건 밖에 걸지 못한다.
 
하지만 elif를 사용한다면 여러 개의 조건을 걸 수 있다.
 
아래 예제를 보면 score = 80 이기 때문에 2번째 조건문안에 코드 print("B등급") 이 실행된다.
 
직접 score의 값을 바꿔보며 공부하면 좋다.
score = 80

if 90 <= score:
    print("A등급")
elif 80 <= score:
    print("B등급")
elif 70 <= score:
    print("C등급")
else:
    print("낙제")
결과 : B등급
 

else는 생략 가능

if문을 사용 할 때 else문은 생략 가능하다.
 
아래 예제를 보면 else를 생략해도 제대로 된 결과가 나온다.
 
하지만 else는 웬만하면 적어야 한다. 이유는 바로 아래에서 알아보자.
num = 2

if 1 <= num:
    print("정상 값")
elif 2 <= num:
    print("정상 값")
결과 : 정상 값
 
 
 

else는 무조건 사용해야 한다.

num이 모든 조건에 해당 되지 않을 때, else문을 작성해 미연에 버그를 방지 하는 목적으로 사용한다.
조건문의 변수는 실시간 값으로 많이 사용하는데, 이때 예상치 못한 쓰레기 값이 들어와 버그가 발생 할 수 있기 때문이다.
일단 이해가 안가더라도 else는 습관해서 사용하자.
num = -1

if 1 <= num:
    print("정상 값")
elif 2 <= num:
    print("정상 값")
else:
    print("오류 값")
결과 : 오류 값
 

 



파이썬에서 지원되는 조건문과 문법

다른 프로그래밍언어와 다르게 파이썬에서만 지원되는 조건문과 문법이 있다.
 
a in s, a not in s, pass 3개를 지원한다.

 

 

 

a in s

리스트, 튜플, 문자열에서 사용 가능한 조건문이다.
 
뜻은 a(변수 or 문자)가 s(리스트 or 튜플 or 문자열) 안에 있는가? 를 물어 본다.
 
리스트, 튜플, 문자열에서 a in s 사용 예제를 보자.
 
 

리스트 사용

아래 예제에서 변수 a가 리스트 [1,2,3,4] 안에 포함 되어있으므로 True를 출력한다.

a = 1

if a in [1,2,3,4]:  #리스트 [1,2,3,4] 안에 a, 즉 1이 있는가?
    print(True)
    
else:
    print(False)
결과 : True
 
 

튜플 사용

a = 1

if a in (1,2,3,4):
    print(True)

else:
    print(False)
결과 : True
 

 

 

문자열 사용

문자열 apple 에 t 가 없으므로 Flase를 출력한다.
a = 't'

if a in 'apple':
    print(True)

else:
    print(False)
결과 : False
 

 


 

a not in s

a in s와 반대로 a not in sa가 s(리스트) 안에 없는가? 를 물어 본다.
 
즉 a가 리스트 [1,2,3,4] 안에 없다면 True를 출력한다.
 
not in 도 리스트, 튜플, 문자열 모두 가능하다.
 
 

리스트 사용

리스트만 예제적고 나머지는 생략.
a = 1

if a not in [1,2,3,4]:
    print(True)

else:
    print(False)
결과 : False
 
 

 

조건문에서 pass 사용하기

아래 예제는 if a < 2: 의 조건이 충족했지만 if문의 내용이 비우니 오류가 발생한다.
 
이때 pass를 사용하면 if문을 실행해도 아무 일도 실행 시키지 않을 수 있다.
a = 1

if a < 2:

else:
    print(False)
결과 : 
  File "C:\Users\skek1\PycharmProjects\pythonProject1\test.py", line 5
    else:
    ^
IndentationError: expected an indented block
 
Process finished with exit code 1
 
 

pass 사용하기

pass를 사용하면 아무런 결과 값을 보여주지 않고 조건문을 정상 종료 시킬 수 가 있다.
a = 1

if a < 2:
    pass
else:
    print(False)
결과 : 
 
 

마치며

조건문 파트는 예제를 직접 타이핑 해보면서 손에 익히는 것이 좋다.
 
그러면 이해가 금방 될 거다.
 

개발 IDE는 파이참이다.

반응형