[코딩테스트: Python] 함수: enumerate

IToriginal·2023년 3월 17일
0
post-thumbnail

코딩테스트 문제를 연습하던중 enumerate함수에 대해서 궁금증이 생겼다.
다른 언어에도 사용하는 함수인지는 잘 알지 못하지만 문자열 문제에서 은근히 자주 쓰이는 것 같다.

👨🏻‍💻 enumerate 함수

Python에서의 enumerate() 함수는 Python 라이브러리에서 사용할 수 있는 기본 제공 함수이다.
주어진 입력을 컬렉션 또는 튜플로 가져와서 열거(Enumerate) 객체로 반환합니다. Python Enumerate() 명령은 반복 가능한 개체의 각 항목에 카운터를 추가해서 열거형 개체를 출력 문자열로 반환하는 동작이 이루어진다.

🧐 enumerate 구문

📍 매개변수

enumerate(iterable, startIndex)

  • iterable : 반복할 수 있는 개체
  • startIndex : 개수는 루프의 첫 번째 항목에 대해 startIndex에 제공된 값으로 시작하고 루프의 끝에 도달할 때까지 다음 항목에 대해 증가. 단, 필수적으로 입력해야 되는 것이 아니라서 생략이 가능하다. (지정하지 않으면 카운트는 0부터 시작)

📍 반환값

입력으로 제공된 반복기(Iterable) 개체에 대한 각 항목에 대한 카운트 값과 함께 반복(Iterable) 가능한 개체를 반환한다.

📍 예제1

item = ["zero", "first", "two"]

for var in enumerate(item):
    print(var)

#Output
#(0, 'zero')
#(1, 'first')
#(2, 'two')

위의 예제를 실행해 보면 매개변수 startIndex를 생략하여 0부터 카운트되어 카운트 값과 함께 item의 값들이 출력된 것을 볼 수 있다.

📍 예제2

item = ["zero", "first", "two"]

for i, var in enumerate(item):
    print("{}번: {}".format(i, var))

#Output
#0번: zero
#1번: first
#2번: two

enumerate함수를 사용하여 for문을 돌려보면 리스트의 원소와 인덱스가 튜플형태로 담겨있기 때문에 각각을 출력하는 것도 가능하다.

🧐 enumerate를 사용한 코딩테스트 문제

https://school.programmers.co.kr/learn/courses/30/lessons/81301
위의 문제는 프로그래머스에 올라와 있는 Lv1 정도의 문제이다. 해당 함수에 대해 이해하고 응용을 조금 한다면 충분히 해결 가능하다.

🔗 Reference

https://www.entity.co.kr/entry/512-%ED%8C%8C%EC%9D%B4%EC%8D%AC%EC%9D%98-Enumerate-%ED%95%A8%EC%88%98-%EB%A3%A8%ED%94%84-%ED%8A%9C%ED%94%8C-%EB%AC%B8%EC%9E%90%EC%97%B4

profile
👾ISTP의 개발자 도전기🧐

0개의 댓글