gpt4 book ai didi

python - 使用单个变量索引到嵌套字典

转载 作者:太空宇宙 更新时间:2023-11-03 12:41:02 25 4
gpt4 key购买 nike

假设您有一个 Python 字典:myDic = {'a':1, 'b':{'c':2, 'd':3}}。您当然可以将变量设置为键值并在以后使用它,例如:

myKey = 'b'
myDic[myKey]
>>> {'c':2, 'd':3}

但是,有没有办法以某种方式将变量设置为一个值,当用作键时,该值也将深入到子词典中?有没有办法在python中完成以下伪代码?

myKey = "['b']['c']"
myDic[myKey]
>>> 2

所以首先它使用“b”作为键,无论返回什么,它都使用“c”作为键。显然,如果第一次查找返回的值不是字典,它将返回一个错误。

最佳答案

不,您不能将任何内容放入变量中以便 myDict[myKey] 将深入嵌套字典。

这里有一个函数可能对您有用:

def recursive_get(d, keys):
if len(keys) == 1:
return d[keys[0]]
return recursive_get(d[keys[0]], keys[1:])

例子:

>>> myDic = {'a':1, 'b':{'c':2, 'd':3}}
>>> recursive_get(myDic, ['b', 'c'])
2

关于python - 使用单个变量索引到嵌套字典,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13852896/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com