Love Every Moment

〔모두를 위한 파이썬〕반복문, while 루프, for 루프 본문

PROGRAMMING::LANGUAGE/Python

〔모두를 위한 파이썬〕반복문, while 루프, for 루프

해 송 2022. 6. 23. 14:01
반응형

 

1. while 루프

  • while        :   에서        안의 내용이 참이면 계속해서 반복문을 수행한다
  • 조건문 안의 n 을 Iteration variable 이라고 한다

 

 

 

2. while 루프 제어하기

(1) break

  • 만약에 while True:  와 같이 조건문이 언제나 참인 경우 무한루프에 빠지게 된다
  • 이것을 탈출하기 위해서는 왼쪽 사진과 같이 break 사용이 필요하다
  • break 를 사용하면 해당 루프를 빠져나오게 된다

 

(2) continue

  • continue 는 루프의 시작 지점으로 다시 돌아가게 한다
  • break 는 루프를 아예 탈출하지만, continue 는 아래의 코드는 건너뛰고 다시 루프의 시작점으로 돌아간다는 점이 차이

 


 

 

3. for 루프

  • for     A    in      B   :  의 형식으로 사용하며, A 가 B 를 순회하여 끝까지 순회하면 반복문을 탈출한다
  • while 루프와 다르게 무한 루프에 빠질 일을 걱정하지 않아도 된다
  • Iteration variable 인 i 가 [5, 4, 3, 2, 1] 를 모두 순회하고 나면 종료 

 


 

4. 반복문 활용하기

(1) 리스트에서 최댓값 찾기

 

(2) 리스트의 평균값 구하기

 

(3) 조건 검사하여 필터링하기

 

(4) 불리언 변수 이용하여 특정요소가 있는지 검색하기

 

(5) 리스트에서 최솟값 찾기

  • 최댓값 찾기와 유사해 보이지만, smallest 변수의 초기값을 None 으로 초기화했다는 점이 다르다
  • None 은 C 언어에서의 NULL과 비슷한 느낌이지만, 별도의 데이터 타입의 객체라는 점이 다르다
  • "NoneType" 클래스의 유일한 객체 "None" 은 is None 으로 검사한다
  • is 는 논리 연산자로, == 와 비슷하지만 더 강력한 비교라는 점이 다르다
is 는 변수의 객체(Object)가 같으면 True 를 반환하지만, == 는 변수의 값(Value)이 같으면 True 를 반환한다.
== 가 value 만 같으면 같다고 판단하는 반면, is 는 value + type 까지 같아야 같다고 판단하므로 더 강력한 비교이다. 

 

 

Difference between == and is operator in Python - GeeksforGeeks

A Computer Science portal for geeks. It contains well written, well thought and well explained computer science and programming articles, quizzes and practice/competitive programming/company interview Questions.

www.geeksforgeeks.org

 

 


 

5. 실습하기

# done 이라고 입력하기 전까지 입력한 숫자들의 평균 구하기
num = 0
total = 0.0
while True :
    input_val = input('Enter a number:')
    if input_val == 'done' :
        break
    try :
        float_val = float(input_val)
    except :
        print('Invalid input')
        continue

    num = num + 1
    total = total + float_val

# 총합, 개수, 평균
print(total, num, total/num)

 

 

강의 제공

 

모두를 위한 파이썬 (PY4E)

부스트코스 무료 강의

www.boostcourse.org

 

반응형
Comments