파이썬에서의 반복문
파이썬에서는 `for`문을 이용하여 반복문을 제작하는 것이 가장 일반적입니다. `for`문은 보통 다음과 같은 방식으로 사용됩니다.
for <원소> in <리스트>:
…
…
…
예시
예를 들어 어떤 리스트에 있는 원소를 출력하고 싶다면 어떻게 해야 할까요?
어떤 리스트를 `[‘A’, ‘B’, ‘C’]`라고 가정한다면 다음과 같이 작성할 수 있습니다.
for letter in [‘A’, ‘B’, ‘C’]:
print(letter)
# 출력 결과
## A
## B
## C
만약 여기에서 인덱스(index)도 함께 출력하고 싶다면 어떻게 해야 할까요?
먼저 파이썬의 내장 함수인 `len()`과 `range()`를 이용하여 만든 인덱스 목록을 이용할 수 있습니다.
letters = [‘A’, ‘B’, ‘C’]
for idx in range(len(letters)):
print(idx, letters[idx])
# 출력 결과
## 0 A
## 1 B
## 2 C
enumerate()
만약 `enumerate()`를 이용하여 위 문제를 푼다면 어떨까요?
for idx letter in enumerate([‘A’, ‘B’, ‘C’]):
print(idx, letter)
# 출력 결과
## 0 A
## 1 B
## 2 C
`enumerate()`를 이용한다면 보다 간단하게 코드를 작성할 수 있습니다.
정리하자면 `enumerate()`함수는 인덱스와 원소로 이루어진 튜플을 만들어 주는 함수입니다.
> tuple(enumerate([‘A’, ‘B’, ‘C’]))
((0, ‘A’), (1, ‘B’), (2, ‘C’))
시작 인덱스 변경
반복문을 사용하다 보면 인덱스를 0이 아니라 1부터 시작하고 싶은 경우가 있습니다. 이런 경우 `start`인자를 이용할 수 있습니다.
> tuple(enumerate([‘A’, ‘B’, ‘C’], start=1))
((1, ‘A’), (2, ‘B’), (3, ‘C’))
참고
https://docs.python.org/ko/3/library/functions.html#enumerate
'Python' 카테고리의 다른 글
[Python] 파이썬 all() 사용 방법 (0) | 2023.08.17 |
---|---|
[Python] isdigit() 사용 방법 (0) | 2023.08.15 |
[Python] List 사용 방법 (0) | 2023.08.13 |
[Python] 집합 자료형(set) 사용 방법 (0) | 2023.08.09 |
[Python] 틸트 ~ (물결표) 연산자로 회문(palindrome) 문제 푸는 방법 (0) | 2023.08.07 |