[Python] 반복문
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