簡體   English   中英

Python通過變量中的鍵獲取/設置dicts的dict值

[英]Python get/set value of dict of dicts by key in variable

我在 Python 中有字典字典,它可以很深,而不僅僅是 2 個級別。

data = {
    0: {
        1: {
            2: "Yes"
        },
        3: {
            4: "No"
        }
    },
}

我需要獲取和設置數據,但密鑰是動態的並存儲在列表中

key_to_get = [0,1,2]

print(data.get(key_to_get))

應該打印Yes

想法?

這是一個解決問題的簡單遞歸函數

def getValue(dict, keys):
    if len(keys) == 1:
        return dict.get(keys[0])
    return getValue(dict.get(keys[0]), keys[1:])

如果你很無聊,還有一個迭代方法

temp = data
for key in key_to_get:
    temp = temp.get(key)
print(temp)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM