728x90
반응형
· While문
while문은 조건이 충족될 때까지 계속해서 반복하는 반복문이다. 반복에 조건에 따라서는 무한히 반복하는 것도 가능하다.
형태 -
while 조건문:
수행문1
수행문2
수행문3
.....
<예시>
a = 1
while a <= 30: # a가 30이 되면 멈춘다.
print(a)
a += 1
<결과>
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 |
· 다중 While문
while문 안에 while문을 사용해서 새로운 반복문을 만드는 것을 뜻한다.
<예제>
i = 1
while i < 4:
print(str(i)+'단')
j = 1
while j <= 9:
print(str(i) + ' * ' + str(j) + ' = ' + str(i*j))
j += 1
i += 1
<결과>
1단 1 * 1 = 1 1 * 2 = 2 1 * 3 = 3 1 * 4 = 4 1 * 5 = 5 1 * 6 = 6 1 * 7 = 7 1 * 8 = 8 1 * 9 = 9 2단 2 * 1 = 2 2 * 2 = 4 2 * 3 = 6 2 * 4 = 8 2 * 5 = 10 2 * 6 = 12 2 * 7 = 14 2 * 8 = 16 2 * 9 = 18 3단 3 * 1 = 3 3 * 2 = 6 3 * 3 = 9 3 * 4 = 12 3 * 5 = 15 3 * 6 = 18 3 * 7 = 21 3 * 8 = 24 3 * 9 = 27 |
· 다중 While문 심화 - '*'을 이용해서 다양한 삼각형 출력하기
<코드>
# 별 출력1
i = 1
while i <= 10:
j = 1
disp = ''
while j <= i:
disp = disp + "*"
j = j + 1
print(disp)
i = i + 1
# 별 출력2
print()
i = 0
while i <= 9:
j = 1
disp = ''
while j <= i:
disp = disp + ' '
j = j + 1
k = 1
while k <= 11 - j:
disp = disp + "*"
k = k + 1
print(disp)
i = i + 1
# 별 출력3
print()
i = 10
k = 1
while 1 <= i:
j = 1
l = 1
disp = ''
while j <= i-1:
disp += " "
j += 1
while l <= k:
disp += "*"
l += 1
print(disp)
i -= 1
k += 1
# 별 출력4
print()
i = 10
while i >= 1:
j = 1
disp = ''
while j <= i:
disp += "*"
j += 1
k = 1
while k <= 11 - j:
k += 1
print(disp)
i -= 1
<결과>
* ** *** **** ***** ****** ******* ******** ********* ********** ********** ********* ******** ******* ****** ***** **** *** ** * * ** *** **** ***** ****** ******* ******** ********* ********** ********** ********* ******** ******* ****** ***** **** *** ** * |
· While문 - continue, break
continue : 계속해서 실행하라는 뜻으로, while문의 맨 처음으로 되돌아간다.
break : 무조건 중단하는 명령어다. 반복문으로부터 탈출한다.
<예제>
a = 0
while a < 10:
a += 1
if a == 5:
continue
if a == 8:
break
print(a)
else: # while문에도 else를 사용할 수 있다.
print('else 발동')
print('while문 완료 후 a : %d'%a)
<결과>
1 2 3 4 6 7 while문 완료 후 a : 8 |
5가 되었을 때 계속해서 while문의 처음으로 되돌아가서 5를 출력하지 않았다. 8이 되었을 땐 강제로 탈출하기 때문에 7까지만 출력되었다. while문을 탈출 했으므로 일반 print문이 써졌다.
· Random 함수
랜덤 함수에서 seed값이라는 것을 특정지어주면 매번 똑같은 랜덤 값이 나오는 것을 확인할 수 있다.
<예제>
import random
print(random.random()) # 0 ~ 1 사이의 난수
print(random.randint(1, 100)) # 1 ~ 100 사이의 난수
a = ['apple', 'samsung', 'LG', 'HTC', 'SONY']
print(random.choice(a)) # 한개의 랜덤 요소 값 추출
print(random.sample(a, 2)) # 지정 개수 만큼 랜덤으로 요소 값 추출
random.shuffle(a) # 객체가 갖고 있는 요소 값들을 랜덤하게 섞어 준다.
print(a)
# 1 ~ 5 사이 정수 숫자 맞추기
num = random.randint(1, 5)
while True: # 무조건 반복문 실행
var1 = int(input('1~5 사이 정수 입력 : '))
if var1 == num:
print('정답!')
elif var1 < num:
print('숫자가 작았어')
elif var1 > num:
print('숫자가 너무 컸어')
<코드>
0.32861939346711566 12 samsung ['HTC', 'apple'] ['apple', 'SONY', 'samsung', 'HTC', 'LG'] 1~5 사이 정수 입력 : 5 숫자가 너무 컸어 1~5 사이 정수 입력 : 4 정답! |
더보기
문제 - 1부터 100까지 숫자 중 7의 배수를 제외한 값들을 출력하라.
<코드>
i = 1
while i <= 100:
if i % 7 != 0:
print(i)
i += 1
<결과>
1 2 3 4 5 6 8 9 10 11 12 13 15 16 17 18 19 20 22 23 24 25 26 27 29 30 31 32 33 34 36 37 38 39 40 41 43 44 45 46 47 48 50 51 52 53 54 55 57 58 59 60 61 62 64 65 66 67 68 69 71 72 73 74 75 76 78 79 80 81 82 83 85 86 87 88 89 90 92 93 94 95 96 97 99 100 |
728x90
반응형
'파이썬(Python)' 카테고리의 다른 글
정규 표현식(정규식) - 1 (0) | 2021.06.13 |
---|---|
For 반복문 (0) | 2021.06.12 |
If문 - 조건문 (0) | 2021.06.09 |
Set 자료 (0) | 2021.06.09 |
Dictionary 자료 (0) | 2021.06.09 |