이번포스팅은루프를돌릴때, 인덱스값을나오게하는방법에대해서이야기를하고자합니다. 사람들은 다양한이유에서흔히들 반복문을많이사용합니다. 연속된 데이터 또는 특정 시퀀스한 데이터 컨테이너에 있는 데이터에 접근하고자 할때 반복문을 많이 사용합니다. 특히나파이썬[Python]에서는반복문을사용하기매우편합니다. 바로 "in"을이용하기때문입니다. 그럼간단히다음코드를한번작성해보겠습니다. example) result)
위의코드를실행해보니위와같은결과가나왔습니다. 물론, 결과는리스트안의모든값들을출력해줬습니다. 하지만, 값만 출력을 해줍니다. C언어 값의 경우는 for문에 range 값을 주고, 그 부분을 바탕으로 배열에 접근합니다. 그래서 인덱스(Index)값에 대해서 쉽게 확인 및 접근할 수 있습니다. 그럼 여기에서만약인덱스값을표현하고자한다면어떻게할까요? 흔히들다음과같은코드로작성을할수 있습니다. example)
result)
저 또한 처음에는 위와 같이 코드를 작성해서 원하는 값들의 순서, 즉 인덱스 값과 값을 같이 출력하고자 했습니다. 하지만 다음과 같이 enumerate함수를 이용해보도록 하겠습니다. 먼저 위에 선언한 리스트를 enumerate 함수를 적용해 보도록 하겠습니다. example)
result)
enumerate 함수를 리스트에 바로 적용하면 enumerate object라서 print문을 통해서 내용을 하기 힘들기 때문에, List로 다시 바꿔서 출력해봤습니다. 구성을 간단히 보시면, (index, value)이 형태로 구성되어 있습니다. 그럼 이를 바탕으로 위에서 작성한 코드와 동일한 결과를 만들어 보도록 하겠습니다. example)
result)
enumerate를 하면 위에서 보시는 바와같이 (수치화 된 값, Value)로 리턴되어 받습니다. 그래서 이를 토대로 다음과 같이 index와 value로 변환 받도록 작업을 해봤습니다. 그럼 위의 함수를 통해서 인덱스의 값이 짝수일 때만 값을 표현하도록 해보겠습니다. example)
result)
위와 같이 나머지를 구하는 연산을 통해서 다음과 같이 한번 꾸며봤습니다. 이번 포스팅은 반복문을 통해서 값 뿐 아니라, 인덱스(Index)값을 얻는 방법에 대해서 알아봤습니다. 반복문에 range와 len함수를 이용해서 구하는 방법과 enumerate를 이용해서 구하는 방법 이 2가지로 살펴봤습니다. 저는 enumerate 함수를 비교적 많이 좋아하는 편입니다. 그래서 자주 사용하는데, 어떤 분들은 가장 먼저 다루었던 range/len함수를 이용해서 사용하는 경우도 많습니다. 혹시 궁금하시거나 문의 사항이 있으시면 언제든지 댓글 및 방명록에 글 남겨주시길 바랍니다. |