Python while, break, continue, loop

yo·2020년 5월 4일
0
i = 0                #초기식
while i < 5:         #while 조건식
    print("Hi" , i)  #반복할 코드
    i += 1           #변화식

결과
Hi 0
Hi 1
Hi 2
Hi 3
Hi 4

-while반복문은 조건식으로만 동작.
-반복할 코드 안에 조건식에 영향을 주는 변화식 존재
-조건식이 true면 반복할 코드와 변화식을 함께 수행
-조건식이 false이면 반복문 종료.

while과 난수

-파이썬에서 난수생성 위해선 random module필요.
문법: import random
-random.random()으로 난수생성 가능.
-randint함수는 난수생성 범위지정, 범위도 난수범위에 포함된다.
문법: random.randint(a,b)
예: random.randint(1,6)이면 1~6 난수 출력(주사위)

3이 나올 때까지 1~6사이 숫자 출력하는 코드

import random
i = 0
while i !=3:
    i = random.randint(1, 6)
    print(i)

while반복문으로 무한루프 만들기

while True:
    print('Hello world')

-True로 취급되는 값(True, 숫자, 문자열 등등)을 조건식 대신 넣으면 무한루프 만들어짐.
-조건식이 항상 참이므로 변화식도 필요없다.
Ctrl+C로 무한루프 종료

while vs for

-while만복문은 반복 횟수가 정해져 있지 않을 때 주로 사용
-for반복문은 반복 횟수가 정해져 있을 때 자주 사용

Break

-break는 반복문을 종료시킨다.

예1)

i = 0
while True:
    print("Hello", i)
    i += 1
    if i == 6:
        break


결과
Hello 0
Hello 1
Hello 2
Hello 3
Hello 4
Hello 5

예2)

for i in range(100):
    print(i)
    if i == 6:
        break

결과
0
1
2
3
4
5
6

continue

-continue는 일부 코드를 실행하지 않고 건너뛰는 기능.
-예제1).

for i in range(10):
    if i%2 == 0:
        continue
    print(i)

결과
1
3
5
7
9

-예제2)

i = 0
while i < 10:
    i += 1
    if i%2 ==0:
        continue
    print(i)

1
3
5
7
9

입력 횟수반큼 반복하기

예시1)

count = int(input('반복 횟수를 입력하세요'))

i = 0
while True:
    print(i)
    i += 1
    if i == count:
        break

예시2)

count = int(input())

for i in range(count+1):
    if i%2 ==0:
        continue
    print(i)

중첩루프 사용하기


for i in range(5):
    for j in range(5):
        print('*', end=" ")
    print()

결과
* * * * * 
* * * * * 
* * * * * 
* * * * * 
* * * * *

계단식 별 출력하기

for i in range(5):
    for j in range(5):
        if j <= i:
           print('*', end=" ")
    print()

결과
* 
* * 
* * * 
* * * * 
* * * * *

대각선 별 출력하기

for i in range(5):
    for j in range(5):
        if j == i:
           print('*', end=" ")
        else:
            print(' ', end="")
    print()

결과
*     
 *    
  *   
   *  
    * 

-바깥쪽 루프가 세로방향, 안쪽 루프가 가로 방향 처리한다는 것 기억하면 됨.

profile
Never stop asking why

0개의 댓글