Python 在dictrionaries中搜索字典中的值
我对python非常陌生,不知道是否有一种简单的方法可以在字典中为字典的特定键找到值。我相信你可以写一个循环等等,但是想知道是否有更直接的方法,特别是如果有多个层,并且你不知道值在哪里 比方说,如果我想找到“母亲”的价值Python 在dictrionaries中搜索字典中的值,python,dictionary,search,Python,Dictionary,Search,我对python非常陌生,不知道是否有一种简单的方法可以在字典中为字典的特定键找到值。我相信你可以写一个循环等等,但是想知道是否有更直接的方法,特别是如果有多个层,并且你不知道值在哪里 比方说,如果我想找到“母亲”的价值 a = {'family 1':{'Father':'Joe', 'Mother': 'Eva'}} 非常感谢 def recursive_lookup(d, key): if key in d: return d[key] for v in
a = {'family 1':{'Father':'Joe', 'Mother': 'Eva'}}
非常感谢
def recursive_lookup(d, key):
if key in d:
return d[key]
for v in d.values():
if not isinstance(v, dict):
continue
x = recursive_lookup(v, key)
if x is not None:
return x
return None
这可以按如下方式使用:
>>> d = {'family 1': {'Father': 'Joe', 'Mother': 'Eva'}}
>>> recursive_lookup(d, "Mother")
'Eva'
这可以按如下方式使用:
>>> d = {'family 1': {'Father': 'Joe', 'Mother': 'Eva'}}
>>> recursive_lookup(d, "Mother")
'Eva'
a[“family 1”][“Mother”]
您可以编写一个函数并将其命名为recursive\u lookup
a[“family 1”][“Mother”]
您可以编写一个函数并将其命名为recursive\u lookup
。谢谢-这很有意义。我更想知道的是,是否有内置的函数可以实现这一点,谢谢-有意义。我更想知道是否有内置函数可以实现这一点