본문 바로가기

Programming Language/Python

Python - for문에서의 range, enumerate

* Python에서의 for in 반복문

Python에서는 for in문 한가지 방식의 for문만 제공한다.

for item in iterable
	...iteratable code...
    

- iterable 객체에는 list, dictionary, set, string, tuple, bytes 등이 있다.

- range도 iterable하다.

 

* range

range(시작숫자, 종료숫자, step)

- 시작숫자부터 종료숫자 바로 앞 숫자까지 컬렉션을 만든다.

- 시작숫자와 step은 생략 가능하다.

for i in range(5)
	print(i)
더보기

결과

0

1

2

3

4

 

- 파이썬에서 권장하지 않는 패턴

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

- 파이썬에서 권장하는 패턴

for v in s:
	print(v)
더보기

결과

1

3

5

 

* enumerate

- 반복문 사용 시 몇 번째 반복문인지 확인할 수 있다. - 이 경우에 사용

- 인덱스 번호와 컬렉션의 원소를 tuple 형태로 반환한다.

t = [1, 5, 7, 33, 39, 52]
for p in enumerate(t):
	print(p)
더보기

결과

(0, 1)

(1, 5)

(2, 7)

(3, 33)

(4, 39)

(5, 52)

 

- tuple 형태 반환, format을 이용해 아래처럼 활용할 수 있다.

for i, v in enumerate(t):
	print("index: {}, value: {}".format(i, v))
더보기

결과

index: 0, value: 1

index: 1, value: 5

index: 2, value: 7

index: 3, value: 33

index: 4, value: 39

index: 5, value: 52

 

 

'Programming Language > Python' 카테고리의 다른 글

Python matplotlib.pyplot - imshow(), show()  (0) 2019.12.19
opencv erode & dilate - Morphological Transformations  (0) 2019.12.17
Python Class  (0) 2019.12.09
Python Class - object class 상속  (0) 2019.12.09
Python generator  (0) 2019.12.06