用法:
class types.SimpleNamespace
一个简单的
object
子类,提供对其命名空间的属性访问,以及有意义的repr。与
object
不同,使用SimpleNamespace
您可以添加和删除属性。如果SimpleNamespace
对象使用关键字参数进行初始化,则这些参数会直接添加到底层命名空间。该类型大致相当于以下代码:
class SimpleNamespace: def __init__(self, /, **kwargs): self.__dict__.update(kwargs) def __repr__(self): items = (f"{k}={v!r}" for k, v in self.__dict__.items()) return "{}({})".format(type(self).__name__, ", ".join(items)) def __eq__(self, other): if isinstance(self, SimpleNamespace) and isinstance(other, SimpleNamespace): return self.__dict__ == other.__dict__ return NotImplemented
SimpleNamespace
可以作为class NS: pass
的替代品。但是,对于结构化记录类型,请改用namedtuple()
。3.3 版中的新函数。
在 3.9 版中更改:repr 中的属性顺序从字母顺序更改为插入顺序(例如
dict
)。
相关用法
- Python types.GenericAlias用法及代码示例
- Python type()用法及代码示例
- Python type用法及代码示例
- Python typing.get_type_hints用法及代码示例
- Python typing.Concatenate用法及代码示例
- Python typing.Optional用法及代码示例
- Python typing.Final用法及代码示例
- Python typing.TypedDict.__optional_keys__用法及代码示例
- Python typing.Protocol用法及代码示例
- Python typing.NoReturn用法及代码示例
- Python typing.TypedDict.__total__用法及代码示例
- Python typing.is_typeddict用法及代码示例
- Python typing.TypeVar用法及代码示例
- Python typing.AsyncGenerator用法及代码示例
- Python typing.final用法及代码示例
- Python typing.ClassVar用法及代码示例
- Python typing.ParamSpec用法及代码示例
- Python typing.Literal用法及代码示例
- Python typing.overload用法及代码示例
- Python typing.TYPE_CHECKING用法及代码示例
注:本文由纯净天空筛选整理自python.org大神的英文原创作品 types.SimpleNamespace。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。