더북(TheBook)

4.2.2 for 루프는 현명하게 사용한다

C/C++가 익숙하다면 리스트 항목을 출력하는 데 range 함수를 남용하는 경향이 있을 수 있다. 다음 예시는 range와 인덱스(색인)를 사용한 C 언어 스타일의 for 루프다.

beat_list = ['John', 'Paul', 'George', 'Ringo']
for i in range(len(beat_list)):
    print(beat_list[i])

여러분이 이렇게 코드를 작성하고 있다면 지금 당장 습관을 고치자. 다음과 같이 리스트나 이터레이터의 내용을 직접 출력하는 것이 더 좋다.

beat_list = ['John', 'Paul', 'George', 'Ringo']
for guy in beat_list:
    print(guy)

루프 변수를 사용할 수 있다고 하더라도, 번호를 생성하려면 enumerate 함수를 사용하는 것이 더 좋다. 예시를 살펴보자.

beat_list = ['John', 'Paul', 'George', 'Ringo']
for i, name in enumerate(beat_list, 1):
     print(i, '. ', name, sep='')
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.