Python - While Loops

pitbull terrier·2020년 6월 7일
0

Python

목록 보기
19/29

파이썬에서는 for 구문 말고도 반복구문이 하나 더 있습니다.
바로 while 구문 입니다.

for 구문은 list나 set, dictionary 등의 data structure 등을 기반으로 코드블록을 반복 실행합니다.
하지만 가끔은 list같은 data structure 기반이 아니더라도 코드블록을 반복해야 할 때가 있습니다.
이럴때에 while 구문이 사용됩니다.

while 구문은 특정 조건문이 True 일동안 코드블록을 반복 실행 합니다.

while <조건문>:
<수행할 문장1>
<수행할 문장2>
<수행할 문장3>
...
<수행할 문장N>

예를 들어, 어떠한 특정 변수의 값의 초기 값이 0인데, 1씩 증가하여 10이 되기전까지 값의 변화를 출력하는 코드는 다음처럼 구현할 수 있습니다.

number = 0

while number <= 10:
print(number)
number += 1
0
1
2
3
4
5
6
7
8
9
10

이렇게 list 같은 자료구조 없이도 반복구문을 실행할 수 있습니다.

Break & Continue

For문과 마찬가지로 while문도 break과 continue가 있습니다.
For문과 동일하게 break는 while문을 강제종료 하고
continue는 다음 iteration으로 넘어갑니다.

number = 0

while number <= 10:
if number == 9:
break
elif number <= 5:
number += 1
continue
else:
print(number)
number += 1
6
7
8

While Else

파이썬의 while문은 else 문이 추가 될 수 있습니다.
if 문의 else 문과 유사합니다. If 문의 else 문은 if 문의 조건문이 False이면 실행됩니다.
While문의 else 문도 while의 조건문이 False 이면 실행됩니다.
즉 while문이 종료되면 else 문이 실행된다는 뜻입니다.

while <조건문>:
<수행할 문장1>
<수행할 문장2>
<수행할 문장3>
...
<수행할 문장N>
else:
<while문이 종료된 후 수행할 문장1>
<while문이 종료된 후 수행할 문장2>
<while문이 종료된 후 수행할 문장3>
...
<while문이 종료된 후 수행할 문장N>

예를 들어, 앞서 본 while 문에 else 문을 추가하여 while 문이 종료되고 난 후의 number 변수의 값을 출력할 수 있습니다.

number = 0

while number <= 10:
print(number)
number += 1
else:
print(f"while 문이 끝나고 난 후 의 number : {number}")
0
1
2
3
4
5
6
7
8
9
10
while 문이 끝나고 난 후 의 number : 11

Assignment
find_smallest_integer_divisor 라는 이름의 함수를 구현해 주세요.

find_smallest_integer_divisor 함수는 하나의 parameter를 받습니다.
Parameter 값은 integer만 주어집니다.
find_smallest_integer_divisor 주어진 parameter 값을 나눌 수 있는 1을 제외한 최소의 양의 정수를 리턴하여야 합니다.

예제:

find_smallest_integer_divisor(15) == 3

자 ! 여기서 여태까지 그렇게 잘 쓰지 않던 기호들이 보인다.

이런것들이다 .
각종 파이썬들의 연산들을 정리해서 올려놔야겠다.
왜냐면
내가 나중에 보려구 ..ㅋ

산술 연산자(+, -, *, **, /, //, %)

좌항과 우항을 산술적 연산을 할때 사용되는 연산자이다. 크게 어려운 내용들은 없지만 자주 사용되는 연산자이니 기억해두면 된다.

대입 연산자(=, +=, -=, /=, //= %=, *=, **=), 누적 연산자

+= 과 같은 연산자를 누적 연산자라고 한다. 이름과 같이 좌항에 값에 우항과의 연산결과를 좌항에 누적해나가는 방식이다. 누적 연산자를 사용하지 않아도 값은 동일하게 나오나 편리하기 때문에 누적 연산자를 더 많이 사용한다.

비교 연산자(==, !=, >, >=, <, <=)

비교 연산자는 연산의 결과가 True 또는 False의 bool 형태로 리턴된다. bool과 같은 자료형은 후에 포스팅할 예정이고 지금 단계에서는 True는 연산 결과가 참일 경우, False는 연산 결과가 거짓일 경우를 의미한다고 알아두면 된다.비교 연산자는 가장 많이 사용되는 연산자들 중 하나이다. 후에 알아볼 제어문(조건문, 반복문 등)에서 참과 거짓을 판단하여 흐름을 제어하는 등에 사용되게 된다.

논리 연산자(and, or, not)

논리 연산자는 위에서 알아본 비교 연산자와 같은 bool 타입을 연산하여 결과를 bool 타입(True, False)으로 리턴하는 연산자이다. 논리 연산자 역시 제어문에서 빈번하게 사용된다.

후 ! 정리 끝 !

profile
yoonbitnara.github.io

0개의 댓글