diff --git a/hutils/__init__.py b/hutils/__init__.py index 5569ef8..4a35935 100644 --- a/hutils/__init__.py +++ b/hutils/__init__.py @@ -21,7 +21,7 @@ from .unittest import TestCaseMixin, disable_elastic_apm, disable_migration, disable_network, fake_time, mock_redis_lock from .validators import is_chinese_phone, is_int, is_phone, is_singapore_phone, is_telephone, is_uuid -__version__ = "1.0.21" +__version__ = "1.0.22" __all__ = [ "EmptyContextManager", diff --git a/hutils/classes.py b/hutils/classes.py index fddfc03..27848a4 100644 --- a/hutils/classes.py +++ b/hutils/classes.py @@ -44,6 +44,12 @@ def __new__(cls, value, *args): obj.obj_values = [value] + list(args) return obj + def __str__(self): + return self.value + + def __repr__(self): + return repr(self.value) + def get_value_at(self, index, default=None): return list_get(self.obj_values, index, default=default) @@ -67,6 +73,10 @@ def chinese_choices(cls) -> List[Tuple]: def chinese_items(cls) -> Dict: return dict(cls.chinese_choices()) + @classmethod + def member_items(cls) -> Dict: + return cls._value2member_map_ + @classmethod def values(cls) -> Tuple: return tuple(_.value for _ in cls)