Studying/Python

[Basic Python] 004. 반복문과 제어 키워드

gracie day 2025. 8. 14. 18:00
반응형

지난번에 연산자와 조건문을 배워봤습니다.

[Basic python] 003. 연산자와 조건문

그럼 한 단계 더 나아가 반복문과 제어 키워드에 대해 배워보도록 하겠습니다.

 

 


▶️ 반복문

1. for 반복문

1) 개념

for i in [m] :
    print(i)

 

반복횟수 n이 데이터의 개수 m과 동일할 때 유리한 반복문입니다.

 

여기에 우리는 range(n)라는 명령어를 사용하는데요.

연속된 int형 데이터를 n개 만들때 사용한답니다.

for i in [0,1,2,3,4,5]:
    print(i)

- range(3) : [0,1,2]
- range(1,5) : [1,2,3,4]

 

2) for 반복문 - list 활용하기

#for 반복문 + list활용
texts = ['가','나','다','라','마']
for t in texts :
    print(t) #하나하나 출력하기
가
나
다
라
마

 

3) for 반복문 - str 활용하기

#for 반복문 + str 활용
texts = ('가나다라마')
for t in texts :
    print(t)
가
나
다
라
마

list를 활용했을 때와 같은 결과값이 도출된다.

 

4) for 반복문 - int, list

#int-list 예시
numbers = [3,5,7,9,12]
for r in numbers:
    print(r*r*3.14)
28.26
78.5
153.86
254.34
452.16

 

데이터를 묶어서 받고 싶다면 이렇게 해보자.

#int-list 예시
numbers = [3,5,7,9,12]
circles = []
for r in numbers: #해당폼은 numbers의 개수가 정해져 있을 때 유용하다.
    area = r*r*3.14
    circles.append(area) #.append 해당 데이터를 저장한다.
print(circles) #최종 결과는 리스트로 묶어서 받게됨
[28.26, 78.5, 153.86, 254.34, 452.16]

 

5) range(), range(a,b) 학습하기

#연속된 숫자 데이터를 만드는 range([start], end[, step])
print(list(range(6)))
print(list(range(1,6)))
print(list(range(1,6,2))) #step=2니까 2칸씩 뛰었음
[0, 1, 2, 3, 4, 5]
[1, 2, 3, 4, 5]
[1, 3, 5]

 

6) for 반복문 - range 사용하기

#list-for 예제
numbers = [0,1,2,3,4,5]
for n in range(0,6) :
    print(n)
0
1
2
3
4
5

 

7) 예제1 - 구구단 3단 만들기

#구구단
for i in range(1,10):
    print("{} × {} = {}".format(3,i,i*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

 

8) 예제2 - 1단~9단 구구단 만들기

#전체 구구단(1~9) - 중첩 for문
for j in range(1,10):
    for i in range(1,10):
        print("{} × {} = {}".format(j, i, j * i))
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 × 1 = 2
2 × 2 = 4
...

2. while 반복문

1) 개념

total = 1
while total < 1024 :
	total *= 2
print(total)

for과 달리 반복횟수가 명확하지 않아도 사용할 수 있는 반복문이다.

while이 for보다 더 넓은 범위에서 사용되며, for은 특정상황에서 유리한 특성을 가지고 있다.

 

2) while 반복문, 종료

#while 옆에 조건문이 나옴
number = int(input("0을 입력할때까지 반복: "))
while number !=0:
    number = int(input("0을 입력할때까지 반복: "))
print("종료")
0을 입력할때까지 반복:  1
0을 입력할때까지 반복:  1
0을 입력할때까지 반복:  1
0을 입력할때까지 반복:  0
종료

 

3) 응용

#while true 응용2
user_input = input("0을 입력할때까지 반복:")
basket = []
while True:
    if user_input == '0':
        break
    basket.append(user_input)
    print("추가:{}".format(basket))
    user_input = input("0을 입력할때까지 반복:")
print("최종:{}".format(basket))
0을 입력할때까지 반복: 사과
추가:['사과']
0을 입력할때까지 반복: 바나나ㅏ
추가:['사과', '바나나ㅏ']
0을 입력할때까지 반복: 복숭아
추가:['사과', '바나나ㅏ', '복숭아']
0을 입력할때까지 반복: 0
최종:['사과', '바나나ㅏ', '복숭아']

 


▶️ 제어문 명령어

1. 개념

- pass : 아무 실행도 하지 않는다. 주로 기능 구현 전 코드 구조를 잡기 위해 임시로 넣는 장치이다.
- break : 현재 실행되는 반복문을 종료한다. n개 이상의 반복문 상황일땐 break가 가까운 반복문을 종료한다.
- continue : 현재 차례의 반복문을 넘어간다(skip) 현재 차례만 종료, 다음 반복 차례 진행

 

1) Pass

#for문에서 pass 사용해보기

for i in range(1,10):
    if i%3==0: #3의 배수일때 0으로 처리한다.
        pass
    print(i)
1
2
3
4
5
6
7
8
9

 

2) Continue

#continue
for i in range(1,10):
    if i % 3 == 0:
        continue #break는 정지 continue는 skip을 의미한다.
    print(i)
1
2
4
5
7
8

 

 

반응형