Patrick's 데이터 세상

Python - 제어 본문

Programming/Python

Python - 제어

patrick610 2020. 6. 24. 21:57
반응형
SMALL

제어문

   if문   


      조건식을 평가하고 참인 경우만 구문이 수행
      2개 이상의 구문은 들여쓰기로 블록을 지정


   예제

>>> value = 10
>>> if value > 5:
		print("value is bigger than 5")
value is bigger than 5

 


      elif

         2개 이상의 조건을 처리하는 경우
         if는 가장 처음에만 사용할 수 있는 반면, elif는 필요한 만큼 사용 가능

      else

         어떠한 조건에도 해당하지 않는 경우
         가장 마지막에만 사용 가능


      예제

score = int(input(('Input Score: ')))	# 사용자로부터 정수값 입력을 받는다.
if 90 <= score <= 100:
	grade = "A"
elif 80 <= score < 90:
	grade = "B"
elif 70 <= score < 80:
    grade = "C"
elif 60 <= score < 70:
    grade = "D"
else:
	grade = "F"
print("Grade is "+grade)

 

   조건식의 참/거짓 판단 : True, False


   2개 이상의 논리식 판별을 위한 연산자 : and/ or

      and, &
         
- score > 70 and score <= 80
         - score > 70 & score <= 80

      or, |
         
- math > 80 or english > 80
         - math > 80 | english > 80


      ※ 하지만 모든 경우에 'and'와 '&', 'or'와 '|'가 동일하게 수행되는 것은 아님

 

   단축 평가


      ⊙ 조건식 전체를 판단하지 않고 순차적으로 진행하다 식 전체가 자명한 경우, 더 이상 수식을 평가하지 않는 방법

          'and'와 'or'는 단축 평가로 수행되도록 보장
            x and y : x가 false인 경우, y값은 평가하지 않음
            x or y : x가 true인 경우, y값은 평가하지 않음

       장점 : 추가적인 판별 연산을 수행하지 않기 때문에 속도 향상
                    Run time error 발생을 try ~ except 구문이 아닌 논리식으로 사전에 차단 가능

 

 

반복문

      
   while 문


      조건식이 참(True)인 동안 내부 구문을 반복 수행

      예제

>>> value = 5
>>> while value > 0 :
		print(value)
        value -= 1
        
        
5
4
3
2
1
>>>

 


   for문

 

      시퀀스형 객체를 순차적으로 순회

      for문에서 사용할 수 있는 자료
         문자열, 리스트, 튜플, 사전
         이터레이터, 제네레이터 객체

      반복문은 2개 이상 중첩해서 사용 가능

 

   break문      

      break문을 만나면 반복문 내부 블록을 벗어남


   continue문     

      continue 이후 반복문 내부 블록을 수행하지 않고, 다음 아이템을 선택하여 내부 블록의 시작 지점으로 이동


   else문

      반복문 수행 도중 break로 인해 중간에 종료되지 않고 끝까지 수행되었을 때, else 블록이 수행    
      ※ break 실행 시 for문을 빠져나오고 continue는 for문을 빠져나와 else로 진행된다.  


   예제

>>> d = {"Apple":100, "Orange":200, "Banana":300}
>>> for k, v in d.items():
		print(k, v)
       
Orange 200
Apple 100
Banana 300


# break
>>> L = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
>>> for i in L:
		if i > 5:
        	break
        print("item: {0}".format(i))
        
Item: 1
Item: 2
Item: 3
Item: 4
Item: 5


# continue
>>> L = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
>>> for i in L:
		if i % 2 == 0:
        	continue
        print("Item: {0}".format(i))
        
Item: 1
Item: 2
Item: 3
Item: 4
Item: 5

 

반응형
LIST

'Programming > Python' 카테고리의 다른 글

Python 데이터 분석 - NumPy  (0) 2020.06.24
Python 데이터 분석 - 데이터 로딩  (0) 2020.06.24
Python 환경 설치(Google Colab, Visual Studio Code, Anaconda)  (1) 2020.06.24
Python - 함수  (0) 2020.06.24
Python - 자료형  (2) 2020.06.24
Comments