Python 搜索嵌套字典并记录步骤

Python 搜索嵌套字典并记录步骤,python,python-3.x,Python,Python 3.x,假设我有一本这样的字典: profile={'Person':{'name':['John'],'Description':['smart']} 我正在寻找一段搜索“John”和“Description”的代码,但不知道它们在嵌套字典中的位置。我还想修改代码以打印如下内容: John位于profile['Person'的值中 描述位于配置文件['Person'的键中 我该怎么做?任何帮助都将不胜感激。非常感谢。 学习如何通过嵌套字典进行查找。在Python字典中,方法用于返回包含所有带值字

假设我有一本这样的字典:

profile={'Person':{'name':['John'],'Description':['smart']}
我正在寻找一段搜索“John”和“Description”的代码,但不知道它们在嵌套字典中的位置。我还想修改代码以打印如下内容:

John位于profile['Person'的值中
描述位于配置文件['Person'的键中
我该怎么做?任何帮助都将不胜感激。非常感谢。

学习如何通过嵌套字典进行查找。在Python字典中,方法用于返回包含所有带值字典键的列表。索引[]用于访问嵌套字典的元素

profile = {'Person':{'name':['John'], 'Description':['smart']},'Person1':{'name':['John1'], 'Description':['smart1']}}

for p_id, p_info in profile.items():
    for key in p_info:

        if p_info[key][0] == "John":
            print(p_info[key][0],"is located in the value of profile['",p_id,"']")
        if p_info[key][0] == "smart":
            print(p_info[key][0],"is located in the value of profile['",p_id,"']")

我建议使用堆栈递归。对不起,我不太懂,我对python很陌生。你能再解释一下吗?谢谢。它没有太多关于python的内容。制作一些外部堆栈,在其中您将推送当前嵌套的dict。然后制作一些在dict上迭代的函数。如果它将内部dict视为值-将此键推送到堆栈并从嵌套的dict进行递归调用。我猜。查找如何编写循环,然后嵌套循环,那么如何在字典中找到一个元素。
profile
dictionary中嵌套了多少元素?是否也有搜索键的方法?非常感谢。