티스토리 뷰

python - 조건문 if





  조건문 if의 특징


   - 해당 조건에 맞는 상황을 수행하는 데 쓰인다.


 ↑ ticket에 입력된 1은 참, 따라서 if문이 실행되어 다음 문장 ' 4시까지 입장해주세요 ' 실행

    # else는 참이 아닐때 해당된다. ex)ticket=0





  조건문 if문의 기본 구조


 

 ↑ 조건문이 참이면 if문 바로 다음의 문장 ( if 블록 )들을 수행한다.

    # 거짓이면 else문 다음의 문장 ( else 블록 )들을 수행하게 된다.

    # else문은 if문 없이 독립적으로 사용할 수 없다.

    ※ if 문의 구분은 들여쓰기로 한다.







 ↑ 파이썬은 조건문을 사용할때 문법상 들여쓰기가 매우 중요하다.

    # 들여쓰기는 공백( space ) 이나 탭( tab ) 중에 어떤걸 사용해도 상관없다. 단,

       혼용해서 사용하면 안된다.

    # 조건문 다음에 콜론( : )도 잊지말자 , 콜론은 마침표와 같다.





 ↑ 조건문이 참이면 if블록의 내용이 출력된다.





 ↑ 조건문이 거짓이면 else블록의 내용이 출력된다.








  조건문 if문의 참거짓 예


   - 조건문은 참과 거짓을 판단하는 문장이다. 대표적인 자료형의 참과 거짓이 몇가지 있다.


자료형

참 

거짓 

숫자 

 0이 아닌 숫자 

 0 

문자열 

 "abc" 

 " " 

리스트 

 [1,2,3] 

 [ ] 

튜플 

 (1,2,3,) 

( )

 딕셔너리

 { "a" : "b"  }

 { } 

 ↑ 파이썬에서 대표적인 자료형



ticket =1 

if ticket : 

    printf ( "4시 까지 입장 해주세요 " )


else :

    printf ( "티켓을 구입 해주세요 " )


 ↑ ticket은 조건문이 된다. 




  비교 연산자


   - 조건이 참인지 거짓인지 판단할때 자료형보다는 비교연산자를 많이 쓴다.



  비교연산자

 의미

 x < y 

x가 y보다 작다 .

x > y 

x가 y보다 크다 .

x==y 

 x와 y가 같다.

x != y  

x와 y가 같지 않다. 

x >= y

x가 y보다 크거나 같다. 

x <= y  

x가 y보다 작거나 같다. 



>>> A = 10

>>> B = 5

>>> A > B

True

 ↑ A > B 라는 조건문을 실행할 때 그 결과가 참이므로 True를 리턴해준다.



A < B

False


A == B

False


A != B  

True

 ↑ 상황에따라 조건문에 변화를 줄 수 있다.




  논리 연산자


   - 참과 거짓으로 표현이 가능 해야하고, 추상적인 내용은 허락되지 않는다.

     # 그는 키가 180cm가 넘는다.( O )

     # 그는 키가 크다.( X )

     # 그는 사람이다.( O )

     # 그는 잘생긴것 같다.( X ) 



연산자 

설명 

x or y  

x와 y 둘중에 하나만 참이면  참이다 

x and y 

x와 y 모두 참이어야 참이다. 

not x 

x가 거짓이면 참니다. 




 ↑ 비교 연산자와 논리 연산자를 이용한 조건문

   # 티켓과 인원이 같거나 티켓이 인원보다 많다면 입장이 가능하다.

   # or 은 둘 중 하나만 참이면 참이된다.






  파이썬만의 독특한 형태


   - 파이썬은 다른 프로그래밍 언어에서 쉽게 볼수 없는 재미있는 조건문이 있다.



in

not in 

 x in 리스트

x not in 리스트 

x in 튜플 

x not  in 튜플 

x in 문자열 

x not in 문자열 

 ↑ in 을 " ~ 안에 " 라는 의미로 보면 좀더 접근하기 쉽다.



>>> 1 in [1, 2, 3]

True

>>>1 not in [1, 2, 3]

False

 ↑ 1이 [1, 2 ,3]이라는 리스트 안에 있는가? 없는가? 거짓



>>>' a '  in ( ' a ', ' b ', ' c ' )

True

>>>' a ' not in ' apple '

False

 ↑ 튜플과 문자열에도 적용할 수 있다.




 ↑ in 을 활용한 조건문




 ↑ pass를 이용하면 조건이 참이여도 아무런 동작도 하지 않는다.





  다양한 조건을 표현하기 위한 elif


   - if와 else만으로는 다양한 조건문을 표현하는데 한계가 있다. 

      # 티켓이 있으면 영화를 볼 수 있다. 티켓은 없지만 쿠폰이 있다면 영화를 볼 수 있다. 티켓과 쿠폰 모두 없다면 영화를 볼 수 없다.




  elif문 기본구조




 ↑ elif의 갯수에는 제한이 없다. 조건을 계속 넣어줄 수 있다.




 ↑ elif를 사용하지 않고 if ~else만을 사용한 조건문



 ↑ elif를 사용한 조건문

    # 간편하고 가독성이 좋다.






              








참고 --------------------------------------------------------

 - 점프 투 파이썬




'Python > [ Python ] 제어문' 카테고리의 다른 글

[ Python ] 반복문 for문  (0) 2017.03.21
[ Python ] 반복문 while  (0) 2017.03.17