Validobj提供有效的对象
validobj的Python项目详细描述
Validobj公司
Validobj是一个接受半结构化数据(例如JSON和YAML)的库 配置文件),并将其转换为更结构化的Python对象。它 重点是:
- Good error messages (而不是避免错误处理中的额外工作 代码)。在
- 架构定义为 dataclasses和其他 高级对象,例如 enums,以及 typing模块。在
- 实现的简单性(而不是完全的通用性)。在
Validobj需要python3.7,并且没有其他依赖项。在
文件
https://validobj.readthedocs.io/en/latest/
示例
- 使用数据类定义
importdataclassesimportenumfromtypingimportMapping,Set,Tuple,ListclassDiskPermissions(enum.Flag):READ=enum.auto()WRITE=enum.auto()EXECUTE=enum.auto()classOS(enum.Enum):mac=enum.auto()windows=enum.auto()linux=enum.auto()@dataclasses.dataclassclassJob:name:stros:Set[OS]script_path:strframework_version:Tuple[int,int]=(1,0)disk_permissions:DiskPermissions=DiskPermissions.READ@dataclasses.dataclassclassCIConf:stages:List[Job]global_environment:Mapping[str,str]=dataclasses.field(default_factory=dict)
在 - 使用Validobj处理输入到其中的字典 ^{pr2}$ 在
应用的转换集是described in the documentation
安装
可以使用pip
安装该包:
python3 -m pip install validobj
以及使用conda
,从conda-forge
频道:
conda install validobj -c conda-forge
代码托管在
https://github.com/Zaharid/validobj
- 项目
标签: