: 특정 실행을 반복, 간결, 효율, 유지 보수가 쉽다는 장점
ex) 대량 메일/문자 발송, 인사말 반복,음악반복 재생,구구단출력,팩토리얼,아침 기상알람,영어단어 반복 학습도구,게임반복 실행, 타이머 등
for i in range(1,10):
print('{} * {} = {}'.format(2,i,(2*i)))
#for ~ in 반복문 형식 (코드블럭)
for i in range (반복 횟수):
실행문
#예시
for i in range 100:
print('i -> {}'.format(i))
#range자리에 '자료구조'형이 올 수도 있음.
# range(100) 의미 : 0-99까지 반복
#반복문에서도 'pass'사용 가능
#whil 반복문 형식 (코드블럭)
while n <= endNum: (조건식)
실행문
#예시
endNum = 10
n = 1
while n <= endNum:
print(n)
n += 1
#n이 10이하 이면 반복 실행
#반복문에서도 'pass'사용 가능
1) 횟수에 의한 반복이라면 for이 더 좋음!
#for문
sum = 0
for i in range(1,10)
sum += 1
print('sum : {}'.format(sum))
#while문
sum = 0
n = 1
while n <11:
sum += n
n += 1
print('sum : {}'.format(sum))
2) 조건에 의한 반복이라면 while이 더 좋음!
# for문
sum = 0
maxInt = 0
for i in range(1, 101):
if i % 7 == 0 and sum <= 50:
sum += i
maxInt = i
print('i :{}'.format(i))
print('7의 배수의 합이 50이상인 최초의 정수 : {}'.format(maxInt))
# while문
sum = 0
maxInt = 0
n = 1
while n <= 100 and sum <= 50:
n += 1
if n % 7 == 0 :
sum += n
maxInt = n
print('n: {}'.format(n))
print('7의 배수의 합이 50이상인 최초의 정수 : {}'.format(maxInt))
for i in range(시작,끝,단계)
#예시: 1부터 10까지 2씩 증가
for i in range (1,11,2):
print(i)
#예시: 1부터 10까지 1씩 증가
for i in range (1,11):
print(i)
#(예시) 0부터 10까지 1씩 증가
for i in range (11):
print(i)
while 에서 조건식의 결과가 항상 true인 경우
#무한 루프
n = 1
while n < 10:
print('hello~')
#9번만 실행
#무한 루프
n = 1
while n < 10:
print('hello~')
n += 1
#무한루프
flag = True
num = 0
sum = 0
while flag:
num += 1
sum += num
print('{}까지의 합은 {}입니다.'.format(num,sum))
#1000까지만 반복
#무한루프
flag = True
num = 0
sum = 0
while flag:
num += 1
sum += num
print('{}까지의 합은 {}입니다.'.format(num,sum))
if sum >= 1000:
flag = False
for i in range(시작,끝,단계)
#예시: 1부터 10까지 2씩 증가
for i in range (1,11,2):
print(i)
#예시: 1부터 10까지 1씩 증가
for i in range (1,11):
print(i)
#(예시) 0부터 10까지 1씩 증가
for i in range (11):
print(i)
: 반복 실행 중 continue를 만나면 실행을 생략하고, 다음 반복 실행문으로
#7의 배수만 프린트하는 코드
for i in range(100):
if i % 7 != 0:
continue
print('{}는 7의 배수입니다.'.format(i))
: else의 실행문은 반복문이 종료된 후 실행됨.
cnt = 0
for i in range(100):
if i % 7 !=0:
continue
print('{}는 7의 배수입니다.'.format(i))
cnt += 1
else:
print('99까지의 정수 중 7의 배수는 {}개입니다.'.format(cnt))
: 실행을 중단하고 반복문을 빠져나옴.
num = 0
while True:
print('Hello~')
num += 1
if(num >=5):
break
# 1부터 100까지 정수를 더할 때, 합계가 100이 넘는 최초의 정수 찾기
sum = 0
searchNum = 0
for i in range(100):
sum += i
if sum >100:
searchNum = i
break
print('searchNum: {}'.format(searchNum))
: 반복문 안에 또 다른 반복문을 선언
for i in range(1,10):
for j in range(i):
print('*',end='')
print()