더북(TheBook)

4.2.20 range와 함께 enum을 생성한다

많은 프로그래머는 일명 마법의 숫자 대신 열거식(enumerated)(혹은 ‘enum’) 타입을 사용하는 것을 선호한다. 가령 red, green, blue, black, white를 숫자 1부터 5까지 표현하는 color_indicator 변수가 있다고 해 보자. 만약 리터럴 숫자 1부터 5 대신 색 이름을 사용하면 코드의 가독성이 좋아질 것이다.

이를 구현하려면 다음과 같이 각 변수 이름에 숫자를 대입하면 된다.

red = 0
blue = 1
green = 2
black = 3
white = 4

이 코드는 잘 동작하겠지만, 이 코드를 자동화할 수 있는 방법을 찾으면 더 좋을 것이다. 파이썬은 시퀀스를 만들기 위해 간단한 트릭을 제공하고 있다. 다음과 같이 range 함수와 함께 다중 대입을 사용해 보자.

red, blue, green, black, white = range(5)
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.