[Python][문법] enumerate() 함수

동글이·2022년 11월 7일
0

Python

목록 보기
5/6

- enumerate() 함수로 더 깔끔하게 코딩하는 법

  • enumerate() 사용전

    >>> letters = ['A', 'B', 'C']
    >>> for i in range(len(letters)):
    ...     letter = letters[i]
    ...     print(i, letter)
    ...
    0 A
    1 B
    2 C
  • 위 작업 enumerate()를 사용하면 더 간편

    >>> for entry in enumerate(['A', 'B', 'C']):
    ...     print(entry)
    ...
    (0, 'A')
    (1, 'B')
    (2, 'C')
    >>> for i, letter in enumerate(['A', 'B', 'C']):
    ...     print(i, letter)
    ...
    0 A
    1 B
    2 C
  • 시작 인덱스 변경

    >>> for i, letter in enumerate(['A', 'B', 'C'], start=1):
    ...     print(i, letter)
    ...
    1 A
    2 B
    3 C
  • 2차원 리스트 루프에 더욱 효과를 봄(시각적으로 이해 쉬워짐)

    >>> matrix = [['A', 'B', 'C'], ['D', 'E', 'F'], ['G', 'H', 'I']]
    >>> for r in range(len(matrix)):
    ...     for c in range(len(matrix[r])):
    ...             print(r, c, matrix[r][c])
    ...
    0 0 A
    0 1 B
    0 2 C
    1 0 D
    1 1 E
    1 2 F
    2 0 G
    2 1 H
    2 2 I

    => enumerate()를 이용해 변경

    >>> for r, row in enumerate(matrix):
    ...     for c, letter in enumerate(row):
    ...             print(r, c, letter)
    ...
    0 0 A
    0 1 B
    0 2 C
    1 0 D
    1 1 E
    1 2 F
    2 0 G
    2 1 H
    2 2 I
  • 참고한 블로그
    https://www.daleseo.com/python-enumerate/

profile
기죽지 않는 개발자

0개의 댓글