class EProtocol(Enum):
INFO = 0
TOKEN = 1
COMMAND = 2
CHAT = 3
위와 같은 Enum을
if __name__ == "__main__":
value = int(EProtocol.CHAT)
위와 같이 형변환을 하면
Traceback (most recent call last):
File "D:/Projects/Python/TCP_Test.py", line 28, in <module>
value = int(EProtocol.CHAT)
TypeError: int() argument must be a string, a bytes-like object or a number, not 'EProtocol'
위와 같은 에러가난다.
class EProtocol(Enum):
INFO = 0
TOKEN = 1
COMMAND = 2
CHAT = 3
def __int__(self):
return self.value
__int__ 를 구현해서 value 값인 숫자를 반환하게 하면 해결
'Programming > Python' 카테고리의 다른 글
(Python) 프로젝트 배포 시 필요한 패키지 한번에 설치하도록 하기 (0) | 2023.02.25 |
---|---|
Python 모듈 import 방법 (0) | 2021.04.26 |