반응형
enum-문자열 변환시 enum 값 얻기
다음 열거 형을 정의했습니다.
from enum import Enum
class D(Enum):
x = 1
y = 2
print(D.x)
이제 인쇄 된 값은
D.x
대신 enum의 값이 인쇄되기를 원했습니다.
1
이 기능을 달성하기 위해 할 수 있습니까?
열거 형 개체를 인쇄하고 있습니다. .value
인쇄하려는 경우 속성을 사용하십시오 .
print(D.x.value)
열거 형 멤버 및 해당 속성에 대한 프로그래밍 방식 액세스 섹션 을 참조하세요 .
열거 형 멤버가 있고 해당 이름 또는 값이 필요한 경우 :
>>> >>> member = Color.red >>> member.name 'red' >>> member.value 1
__str__
원하는 것은 사용자 지정 문자열 표현을 제공하는 것뿐이라면 열거 형에 메서드를 추가 할 수 있습니다 .
class D(Enum):
def __str__(self):
return str(self.value)
x = 1
y = 2
데모:
>>> from enum import Enum
>>> class D(Enum):
... def __str__(self):
... return str(self.value)
... x = 1
... y = 2
...
>>> D.x
<D.x: 1>
>>> print(D.x)
1
다음을 사용하여 액세스를 구현했습니다.
class D(Enum):
x = 1
y = 2
def __str__(self):
return '%s' % self.value
이제 난 그냥 할 수있어
print(D.x)
1
결과 를 얻으려면 .
대신 self.name
인쇄하려는 경우 에도 사용할 수 있습니다 .x
1
참고URL : https://stackoverflow.com/questions/24487405/enum-getting-value-of-enum-on-string-conversion
반응형
'Nice programing' 카테고리의 다른 글
누군가 AngularJS의 범위에 대해 $ destroy 이벤트의 예를 제공 할 수 있습니까? (0) | 2020.11.14 |
---|---|
100vw로 인해 수평 오버플로가 발생하지만 둘 이상인 경우에만? (0) | 2020.11.14 |
동적으로 이미지 추가 React Webpack (0) | 2020.11.14 |
Google Cloud Platform 프로젝트의 이름은 어떻게 변경하나요? (0) | 2020.11.14 |
이중 하이픈으로 시작하는 파일을 제거하는 방법은 무엇입니까? (0) | 2020.11.12 |