Python

[Python] 반복문

야챔 2021. 3. 31. 14:38
for 변수 in 리스트(튜플, 문자열):
	반복할 내용
	...

Python은 들여쓰기가 중요하다.

for문 : 하고 다음줄에 4번 띄어써야한다.

tab 키를 누르면 4번 띄어써지니 tab키 누르자.

 

for 변수 in 리스트는 리스트의 첫번째 요소부터 변수에 대입된다.

 

ex)

list = ['가', '나', '다', '라']
for i in list:
	print(i)

로 출력이 된다.

list의 내용들이 i 변수에 대입되어 출력되었다.

 

list = [('가','나'), ('다','라'), ('마','바')]
for (a, b) in list:
	print(a + b)

list의 요소가 튜플이라 자동으로 a, b에 대입이 되었다.

 

가나

다라

마바

로 출력이 된다.

저기서 list[0]는 ('가', '나')이고 list[2]는 ('마', '바')이다.

 

 

enumerate

a = [1,2,3]
for i in enumerate(a):
	print(i)

반복문을 사용할 때 몇 번째 반복문인지 확인 할 수 있다.

(0, 1), (1, 2), (2, 3)으로 tuple 형태로 반환이 된다.

 

a = [1,2,3]
for i, v in enumerate(a):
	print(i, v)

for i, v in enumerate(a) 를 해주면 i에 index값이 들어가고 v엔 a의 값이 들어가게된다.

첫번째에선 i가 튜플형태로 있었는데 두번째에선 i, v를 해주어서 index와 값이 각각 따로 들어가게 해주었다.

range( )

a = 0
for i in range(0, 5):
	print(i)

range(시작, 끝) 함수를 이용할 수 있다.

range(0, 5)는 0부터 4까지이다. 끝인 5는 포함이 되지 않는다. (0이상 11미만)

0

1

2

3

4

로 출력이 된다.

 

 

len( )

list = [1, 2, 3, 4, 5, 6]
print(len(list))

len( ) 은 리스트의 요소 개수를 알려준다. len(list)는 6 이 출력된다.

 

 

range()와 len() 같이 사용하는 경우도 있다.

list = [1, 2, 3, 4, 5]
for i in range(len(list)):
	print(i)

0

1

2

3

4

로 출력이 된다.

len(list) 를하여 리스트의 요소개수가 5개인 것을 알게 되었고

range(len(list))를 하여 0부터 5까지 범위를 나타낸다.

 

왜 리스트엔 1,2,3,4,5 인데 출력은 0,1,2,3,4 일까?

i 에 0부터 5미만을 나타내는 range 때문이다.

 

print(range(len(list))) 를 하면 출력이 range(0, 5) 가 된다.

 

 

continue 문

list = [10, 4, 7, 1, 2]
for i in range(len(list)):
	if list[i] < 5:
    	    continue
	print('5넘는 수 : {}은 {}번째'.format(list[i], i))

continue를 만나면 다시 처음으로 돌아가게된다.

if 조건문을 통해서 list 요소 하나의 값이 5를 넘는지 확인한다.

5가 넘지않으면 if 문에 들어가면서 continue를 만나게 되어 print 문을 만나지 못한다.

5를 넘으면 그 요소는 print 문을 만나게되어

5넘는 수 : 10은 0번째
5넘는 수 : 7은 2번째

가 출력이 된다.

 

 

 

 

>>> if elif else