栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

如何在Python中验证字典的结构(或架构)?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

如何在Python中验证字典的结构(或架构)?

不使用库,您还可以定义一个简单的递归函数,如下所示:

def check_structure(struct, conf):    if isinstance(struct, dict) and isinstance(conf, dict):        # struct is a dict of types or other dicts        return all(k in conf and check_structure(struct[k], conf[k]) for k in struct)    if isinstance(struct, list) and isinstance(conf, list):        # struct is list in the form [type or dict]        return all(check_structure(struct[0], c) for c in conf)    elif isinstance(struct, type):        # struct is the type of conf        return isinstance(conf, struct)    else:        # struct is neither a dict, nor list, not type        return False

假设配置可以包含不在您的结构中的键,如您的示例。


更新:新版本还支持列表,例如

'foo': [{'bar': int}]



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/660842.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号