1 답변
-
파이썬 3.4버전에서 enum기능이 추가되었습니다. pypi에서는 구버전(3.3, 3.2, 3.1, 2.7, 2.6, 2.5, 2.4)에서도 enum기능을 제공합니다. 구버전에서도 enum을 쓰고 싶으면
$pip install enum
이 아니라$pip install enum34
를 해주세요. (숫자가 없으면 호환되지 않습니다.)사용방법은 다음과 같습니다. C랑 비슷하게 쓰실거면
from enum import Enum Animal = Enum('Animal', 'ant bee cat dog')
아니면 이렇게 쓰세요
class Animals(Enum): ant = 1 bee = 2 cat = 3 dog = 4
그보다 구 버전에서는
def enum(**enums): return type('Enum', (), enums) Animal = enum(ant=1, bee=2, cat=3, dog=4) print Animal.ant
와 같이 썼습니다.
자동으로 번호를 매기고 싶다면 다음과 같이 쓰는 방법이 있습니다.
def enum(*sequential, **named): enums = dict(zip(sequential, range(len(sequential))), **named) return type('Enum', (), enums) Animal = enum('ant', 'bee', 'cat', 'dog') print Animal.ant
댓글 입력