我不確定我是否只是在這里遇到了一個腦障,或者這是否真的應該是一個挑戰,但是如果鍵未知,我無法弄清楚如何檢查嵌套字典的深度。
這是我正在嘗試做的一個例子(以最簡單/有效的方式):
最理想的是,我可以通過某種方式來確定此 dict 的最大深度,而無需知道鍵和值 -
nested_dict = {
'nest1': {
'nest2': {
'nest3': 'val'
},
'unknown_key', 'val',
'unknown_key': 'val'
}
}
請讓我知道這是否有意義。
uj5u.com熱心網友回復:
檢查它是否是一個字典,如果是,則迭代這些值并遞回呼叫該函式獲取該值的最大值。
PS:Dict 是語法錯誤,已修復
def max_depth(d):
if isinstance(d, dict):
return 1 max((max_depth(value) for value in d.values()), default=0)
return 0
nested_dict = {'nest1': {'nest2': {'nest3': 'val'}, 'unknown_key': 'val', 'unknown_key': 'val'}}
print(max_depth(nested_dict))
輸出
3
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/363167.html
上一篇:JavaScript的map()方法失敗并顯示錯誤“mapisnotafunction”
下一篇:使用函式和引數創建字典的問題
