[英]dict of dicts python
我有一個由其他字典組成的python字典,例如(示例):
{2: {4: {5: {6: {7: None}}}, 7: None}, 7: None}
我想提取密鑰,以便最終得到:
[2,4,5,6,7,None]
[2,7,None]
[7,None]
我試圖用遞歸函數解決這個問題,但是沒有運氣...
def f(d):
paths = []
try:
for key in f.keys():
path.append(f(d[key]))
pass:
pass
有辦法做到嗎?
以下似乎可以解決問題:
def f(d):
paths = []
for key, value in d.items():
if value is None:
paths.append([key, value])
else:
internal_lists = f(value)
for l in internal_lists:
paths.append([key] + l)
return paths
1)您的try:循環寫得很爛:語法是
try:
xxx
except:
xxx
您期望這里會失敗嗎? 為什么要嘗試?
2)您的循環也不正確:
for key in f.keys():
f是一個函數,它沒有鍵。 d做。
3)處理鍵時,您需要將其保留在輸出中的某個位置,並且暫時不需要
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.