프로그래밍 언어/Python

Python 반복문 (for, while)

dpswlsldj 2021. 2. 27. 19:11
728x90

Python에서의 반복문은 크게 두 가지로 구분할 수 있습니다.

 

for, while입니다. 그리고 여기에 응용할 수 있는 range 함수가 있습니다.

 

for문

기본 구조입니다.

for 변수 in 반복 가능한 데이터:
    문장1
    continue 또는 break
else:
    문장2

아래와 같이 사용할 수 있습니다.

a = 'abcdefg'
for c in a:
    print(c)
    
b = [1, 2, 3, 4, 5]
for i in b:
    print(i)

c = (1, 2, 3, 4, 5)
for i in c:
    print(i)

d = {1, 2, 3, 4, 5}
for i in d:
    print(i)

e = {'a':'aa', 'b':'bb', 'c':'cc'}
for i in e:
    print(i, e[i])

for i in e:
    print(i, e[i])
    
for i in e.keys():
    print(i)
    
for i in e.values():
    print(i)
    
for i in e.items():
    print(i)

Dictionary가 포함된 list에서는 아래와  같이 사용할 수 있습니다.

a = [{'room':'101', 'key':'0101'}, {'room':'102', 'key':'0102'}, {'room':'103', 'key':'0103'}]
b = [('a', 10), ('b', 20)]

for i in a:
    print(i)

for i, j in a:
    print(i, j)
#room key
#room key
#room key

for i, j in b:
    print(i, j)
#a 10
#b 20

while 문

while 조건식1:
    구문1
    continue 또는 break
else:
	구문2

아래와 같이 사용할 수 있습니다.

a = 0
while a < 10:
    print(a)
    a += 1
else:
    print('else')

range 문

range(초기값, 끝값(개수), 증가치) 의 형태로 구성됩니다.

 

(끝값), (초기값, 끝값), (초기값, 끝값, 증가치) 세 가지 형태로 응용할 수 있습니다.

a = range(5)
print(list(a)) #0부터 4까지(5개) list가 생성

b = range(0, 5)
print(list(b)) #0부터 4까지(5개) list가 생성 [0, 1, 2, 3, 4]

c = range(0, 10, 2)
print(list(c)) #0부터 9까지(10개) 2씩 증가하는 list가 생성 [0, 2, 4, 6, 8]
print(list(c)[1])

for와 range의 동시 사용

for i in range(1, 10):
    print(i)

for i in range(1, 10, 3):
    print(i)
    
a = [i for i in range(1, 10)]
print(a)

b = [i*10 for i in range(1, 10)]
print(b)