Coding & Programming/Python 기초(A-Z)

[Python:파이썬:기초] 11. while 문(반복문)

mainCodes 2021. 5. 20. 10:04

[Python:파이썬:기초] 11. while 문(반복문)

 

안녕하세요 JollyTree입니다 (•̀ᴗ•́)و

 

다음은 while 문의 여러 형태로 기본적으로 while문은 주어진 조건이 참(True)인 경우 내부 코드를 반복 실행합니다.

 

#조건1이 True이면 코드1 실행
while [조건1]:
    코드1
    ...
    
#조건1이 True이면 코드1 실행 그렇지 않으면 코드2 실행    
while [조건1]:
    코드1
    ...
else:
    코드2    

#조건1과 조건2가 모두 True이면 코드1 실행
while [조건1] and [조건2]:
    코드1
    ...    

#조건1 또는 조건2가 True이면 코드1 실행
while [조건1] or [조건2]:
    코드1
    ...    

#조건1이 False이면 코드1 실행
while not [조건1] :
    코드1
    ...        

#중첩(이중) while문
while [조건1]:   
    코드1
    ...
    while [조건2]:
        코드2
        ...

 

break 문 - 반복 중지

 

반복문은 필요한 횟수만큼의 반복이 끝나면 언젠가는 반복을 중지해야 합니다. 그렇지 않으면 프로그램이 무한 반복 상태로 빠지게 되며 반복을 중지시키려면 다음과 같이 break문을 사용합니다. 

 

while [조건1]:
    코드1
    ...
    
    if [조건2]:
        break  #반복 중지, while 문 탈출
    ...

 

continue 문 - 현재의 반복을 중지하고 다음 반복을 실행

 

continue 문은 break 문과 달리 반복 자체를 중지시키지는 않습니다. 아래 예시와 같이 반복문 안에서 continue 문을 만나면 프로그램은 현재의 반복을 중지하고 while [조건1]을 다시 검사하는 다음 반복 상태로 이어집니다. 

 

아래 예시에서는 [조건2]가 참(True)이 되면 continue 문이 호출되므로  print("출력1"), print("출력2")는 호출되지 않은 상태 즉, continue문 이후의 코드는 실행되지 않고 다음 반복으로 이어지게 됩니다.

 

while [조건1]:
    코드1

    if [조건2]:
        continue  #현재 반복을 중지하고, while 문 시작 위치로 이동

    print("출력1")
    print("출력2")
    ...

 

예제는 while문의 여러 형태를 보여줍니다.

 

🔗 while 문 예제(Example):

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
= 15
= 10
= 0
= 0
 
print(" >> a> b 테스트")    
while(a > b): #조건이 참인 경우
    print("%d" % b)
    b += 1;
 
print(" >> and 연산자 테스트")    
= 10    
while(a > b) and (c == 0):
    print("hello %d" % i) 
    if(i == 3):
        break
    i += 1
 
print(" >> or 연산자 테스트")    
= 0
while (a < b) or (c == 0):    
    print("world %d" % i) 
    if(i == 3):
        break
    i += 1     
 
print(" >> not 연산자 테스트")    
while not (a > b):      #조건은 참(True)이지만 not 때문에 거짓(False)
    print("mainCodes")  #출력되지 않음
    
print(" >> continue, break 테스트")    
= 0    
while (i < b):
    i += 1
    if(i < 3):   #3보다 작은 수는 출력하지 않고 다음 반복 실행
        continue
    if(i == 5):  #i가 5와 같으면 반복 종료
        break
 
    print("i = ", i)
    
print(" >> while...else 테스트")    
= 0    
while (i < 5): 
    print("i = ", i)
    i += 1
else:
    print("i의 값이 5보다 큽니다.")
cs

 

🔗 실행결과(Output):

 


※ 참고 : break, cotinue 문은 for문(반복문)에서도 동일하게 적용됩니다.

 

이상 JollyTree였습니다 (•̀ᴗ•́)و