반복문이란?
어떤 코드(연산, 기능)을 반복적으로 실행해야 할 때 사용하는 구문
반복문의 유형 | |
for문 | 반복횟수나 반복범위를 지정하여 반복 실행 |
while문 | 조건이 거짓이 될 때까지 반복 실행(무한루프에 빠질 수 있음) |
for문의 구조
for 요소 in 반복범위 :
(들여쓰기)반복할 코드
*for문 끝에 : 하고, 밑에 줄부터 들여쓰기!
*요소는 (반복 코드를 실행할 때) 반복범위에서 가져오는 값
*반복범위는 문자열, 리스트, range() 등 가능
ex)
str = "hello"
for i in str :
print(i)
결과는
h
e
l
l
o
*print(i)를 실행할 때마다 i를 출력하기 때문에 한 줄씩 나옴
출력형태
#결과가 한 줄씩(원래)
for i in range(5):
print(i)
#한 줄 띄기
print('\n')
#결과가 한 줄씩(굳이 지정)
for i in range(5):
print(i, end='\n')
#한 줄 띄기
print('\n')
#결과가 한 줄인데, 띄어쓰기 없이
for i in range(5):
print(i, end='')
#한 줄 띄기
print('\n')
#결과가 한 줄인데, 띄어쓰기 포함
for i in range(5):
print(i, end=' ')
#한 줄 띄기
print('\n')
#결과가 한 줄인데, 탭 포함
for i in range(5):
print(i, end='\t')
결과는
0
1
2
3
4
0
1
2
3
4
01234
0 1 2 3 4
0 1 2 3 4
반복범위
반복범위가 range()함수일 때
for 요소 in range(시작값, 끝값, 증가값) :
(들여쓰기)반복할 코드
시작값부터 끝값 미만(전)까지 반복
*시작값, 증가값은 생략해도 되지만 끝값은 반드시 써야함
#range(5) = [0,1,2,3,4]
for i in range(5) :
print(i)
#0부터 4까지 출력하라는 뜻
결과
0
1
2
3
4
for i in range(1, 10, 2) :
print(i)
1
3
5
7
9
for i in range(5, 2, -1) :
print(i)
5
4
3
반복범위가 리스트일 때
list = [1, 2, 3, 4]
for i in list :
print(i)
결과
1
2
3
4
반복범위가 문자열일 때
str = "hello"
for i in str :
print(i)
결과는
h
e
l
l
o
enumerate()함수
순서가 있는 자료형(리스트, 딕셔너리 등)을 입력받아 순서(인덱스)와 값을 리턴한다
- for문과 자주 사용됨
data = enumerate([1, 2, 3])
for i, k in data :
print(i, ":", k)
또는
list = [1,2,3]
for i, k in enumerate(data) :
print(i, “:”, k)
의 결과
0 : 1
1 : 2
2 : 3
0 : 1
1 : 2
2 : 3
-
a_list = [‘a’, ‘b’, ‘c’]
b_list = [1, 2, 3]
for i, k in enumerate(a_list)
print(i, ”:”, k)
0 : a
1 : b
2 : c
-
a_list = [‘a’, ‘b’, ‘c’]
b_list = [1, 2, 3]
for i, k in enumerate(a_list)
print(i, ”:”, b_list[i])
0 : 1
1 : 2
2 : 3
for문을 활용한 프로그래밍
1부터 n까지 합 계산
n = int(input())
#n = int(input('1부터 몇까지 더할까요?'))
sum = 0
for i in range(1,n+1) :
sum += i
print(sum)
#print(f'1부터 {n}까지 합계는 {sum}입니다') #fstrig: 메시지를 ''로 감싸고, 변수는 {}로 감싸줌
#print('1부터 %d까지 합계는 %d입니다'%(n,sum)) #%d는 정수형이라는 뜻
결과는
1부터 n까지 합계는 sum입니다
구구단
n=int(input('몇단이 궁금하세요?'))
#print(n,'단입니다')
print(f'{n}단입니다')
for i in range(1,10):
#print(n,"x",i,"=",n*i)
print(f'{n} x {i} = {n*i}')
결과는
4단입니다
4 x 1 = 4
4 x 2 = 8
4 x 3 = 12
4 x 4 = 16
4 x 5 = 20
4 x 6 = 24
4 x 7 = 28
4 x 8 = 32
4 x 9 = 36
'01. 파이썬 공부' 카테고리의 다른 글
반복문 - while문 (0) | 2022.06.19 |
---|---|
자료형의 종류 - 딕셔너리, 집합 (0) | 2022.06.19 |
range()함수 (0) | 2022.06.13 |
조건문 - if문 (0) | 2022.06.12 |
프로그램의 기본 제어구조의 종류 (0) | 2022.06.12 |