{ } Raw JSON

bundles / traitlets latest / traitlets / traitlets / UseEnum

class

traitlets.traitlets:UseEnum

source: /traitlets/traitlets.py :4211

Signature

class   UseEnum ( enum_class : type[t.Any] default_value : t.Any = None ** kwargs : t.Any )  →  None

Members

Summary

Use a Enum class as model for the data type description. Note that if no default-value is provided, the first enum-value is used as default-value.

Extended Summary

# -- SINCE: Python 3.4 (or install backport: pip install enum34)
import enum
from traitlets import HasTraits, UseEnum

class Color(enum.Enum):
    red = 1  # -- IMPLICIT: default_value
    blue = 2
    green = 3

class MyEntity(HasTraits):
    color = UseEnum(Color, default_value=Color.blue)

entity = MyEntity(color=Color.red)
entity.color = Color.green  # USE: Enum-value (preferred)
entity.color = "green"  # USE: name (as string)
entity.color = "Color.green"  # USE: scoped-name (as string)
entity.color = 3  # USE: number (as int)
assert entity.color is Color.green

Aliases

  • traitlets.UseEnum