如何遍历和搜索python字典?

如何遍历和搜索python字典?,第1张

如何遍历和搜索python字典?

您的结构不规则。这是带有遍历子词典的 Visitor 函数的版本

attrs

def walkDict( aDict, visitor, path=() ):    for  k in aDict:        if k == 'attrs': visitor( path, aDict[k] )        elif type(aDict[k]) != dict: pass        else: walkDict( aDict[k], visitor, path+(k,) )def printMe( path, element ):    print path, elementdef filterFor( path, element ):    if element['id'] == '4130-2-2':        print path, element

您将像这样使用它。

walkDict( myDict, filterFor )

这可以变成生成器而不是 访客 ; 它会

yield path, aDict[k]
而不是调用访问者函数。

您可以在for循环中使用它。

for path, attrDict in walkDictIter( aDict ):    # process attrDict...


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5645206.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存