Programming/Python

데이터와 인덱스를 알려주는 enumerate

매직블럭 2020. 12. 1. 07:47

for문과 함께 많이 사용하는 기능 중 꽤나 유용한 enumerate.

 

일반적으로 순회할 데이터를 enumerate로 감싸서 데이터와 인덱스를 받아오는데 사용한다.

 

# data list
data = ["red", "blue", "green", "black", "white"]

# range를 이용한 인덱스와 데이터 출력
for ii in range(len(data)):
	output = "Idx : %d / Data : %s" % (ii, data[ii])
    print(output)

# enumerate를 이용한 인덱스와 데이터 출력
# range, len 함수를 하나로 줄이고 데이터에 인덱스로 접근하는 과정을 생략
for ii, color in enumerate(data):
	output = "Idx : %d / Data : %s" % (ii, color)
    print(output)
# Idx : 0 / Data : red
# Idx : 1 / Data : blue
# Idx : 2 / Data : green
# Idx : 3 / Data : black
# Idx : 4 / Data : white

 

일반적으로는 enumerate에 첫번째 파라미터만 채워서 사용했는데

두번쨰 파라미터로 시작인덱스값을 지정 가능하다는것을 알게되어 기록

# data list
data = ["red", "blue", "green", "black", "white"]

# enumerate를 이용한 인덱스와 데이터 출력
# 두번째 파라미터로 시작 인덱스를 지정할 수 있다.
for ii, color in enumerate(data, 100):
	output = "Idx : %d / Data : %s" % (ii, color)
    print(output)
# Idx : 100 / Data : red
# Idx : 101 / Data : blue
# Idx : 102 / Data : green
# Idx : 103 / Data : black
# Idx : 104 / Data : white