跳转到主要内容

一个小巧但实用的包,用于加载、验证和使用类型化数据结构,包括配置文件。

项目描述

Latest Version License Python Versions CI Coverage

datastruct

一个小巧但实用的包,用于加载、验证和使用类型化数据结构,包括配置文件。

您将获得

  • 一种轻松定义类型化分层数据结构的方法。

  • 无需烦恼地定义嵌套结构。

  • 从多种格式(json、yaml和Serialize支持的任何格式)中加载,

  • 错误检查包括:缺失值、意外值、错误的类型、错误的值。

  • 易于集成到其他应用程序的错误报告。

安装

pip install datastruct

用法

>>> from typing import List
>>> from datastruct import DataStruct
>>> class EmailServer(DataStruct):
...
...     host: str
...     port: int
...     username: str
...     password: str
>>>
>>> class Config(DataStruct):
...
...     download_path: str
...     email_servers: List[EmailServer]
...     wait_time: float
>>>
>>> cfg = Config.from_filename('settings.yaml')

当发现无效值时,将引发异常。

如果您想累积所有错误以进行检查

>>> cfg = Config.from_filename('settings.yaml', raise_on_error=False)
>>> print(cfg.get_errors())

然后您可以在代码中使用DataStruct对象

>>> print(cfg.email_servers[0].host)

其他功能

您可以轻松指定默认值,

>>> class EmailServer(DataStruct):
...
...     host: str
...     port: int = 25
...     username: str
...     password: str

有关维护者列表,请参阅AUTHORS

要查看每个版本的项目的重要变更的有序列表,请参阅CHANGES

项目详情


下载文件

下载适用于您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源代码分发

datastruct-0.5.tar.gz (16.4 kB 查看哈希值)

上传时间 源代码

由以下支持