[/*elice*/] 04. 반복문-인공지능 활용을 위한 파이썬 기초
[이론 1]
- 반복문: 어떠한 조건이나 범위 내에서 어떠한 명령을 반복적으로 수행하는 것
# for문
- 범위(시퀀스) 안에서 원소를 하나씩 가져와서(for) 출력
- 즉, 원소로 반복하는 방법 / 시퀀스의 원소를 하나씩 변수에 넣어가면서 명령 실행
for 변수 in 시퀀스:
<수행할 명령>
- for 문에 들어갈 명령들은 같은 들여쓰기로 구분
- 명령이 len(시퀀스)번 만큼 실행
# for-range문
- 반복 시, 문자열이나 리스트 등을 아는 것이 아닌 횟수를 하는 경우 사용
- range : 연속되는 숫자를 만들어주는 시퀀스 자료형
ex) range(a,b) => a, a+1, a+2, ... , b-1
range(0,9) => 0,1,2,3,4,5,6,7,8
range(5) == range(0,5)
- 1) for-range : 구간으로 반복하는 방법
for 변수 in range(a, b):
<수행할 명령>
-> a이상 b미만의 수를 변수에 넣어가면서 명령을 수행
- 2) for-range : 횟수로 반복하는 방법
for 변수 in range(a):
<수행할 명령>
-> a번 만큼 명령을 수행
[이론 2]
# while문
- 조건이 반복되는 동안 계속 명령 실행
- 즉, 조건으로 반복하는 방법 / 조건이 True면 명령을 수행
while 조건:
<수행할 명령>
- while문에서 조건이 항상 True면 무한루프에 빠지게 됨
# break 문
- 반복문을 탈출하는 역할
- if문으로 조건을 걸어준 다음, break 실행
★
★
[총 정리]
1. 반복문
어떠한 조건이나 범위 내에서 어떠한 명령을 반복적으로 수행하는 것
2. for-sequence문
Point I
원소로 반복하는 방법
시퀀스의 원소를 하나씩 변수에 넣어가면서 명령 실행
nums = [1, 2, 3, 4, 5] for i in nums: print(2*i) ## 실행 결과 ## 2 4 6 8 10
3. for - range()문
Point I
range() : 숫자 시퀀스를 만들어주는 함수
- range(a, b) : a 이상 b 미만의 숫자 시퀀스를 만들어 줌
- range(a) : 0이상 a미만의 숫자 시퀀스를 만들어줌
Point II
for-range(a, b): 범위로 반복 (a 이상 b 미만)
#1 이상 11 미만의 범위 반복 for i in range(1, 11): print(i) ## 실행 결과 ## 1 2 ... 9 10
Point III
for-range(a) : 횟수로 반복 (a번)
#5회 반복 for i in range(5): print("안녕!") ## 실행 결과 ## 안녕! 안녕! 안녕! 안녕! 안녕!
4. while
Point I
while 조건 : 조건이 True(참)인 동안 명령 실행
num = [] i = 0 while len(num) < 5: num.append(i) i = i+1 print(num) ## 실행 결과 ## [0, 1, 2, 3, 4]
Point II
조건이 True일 동안 명령을 수행하므로, 반복이 끝나도록 코드를 작성해야 함
조건식에 들어가는 변수 수정, break문 사용 등이 있음
i = 0 while True: #break가 없다면 무한루프! print(i) if i >= 10: break #i가 10보다 커지면 탈출! i = i + 1 ## 실행 결과 ## 0 1 2 ... 9 10