在Python中,可以使用递归函数和循环来实现根据匹配的另一个字典键/值查询嵌套对象字典。
假设有一个嵌套对象字典如下:
nested_dict = {
'key1': 'value1',
'key2': {
'key3': 'value3',
'key4': 'value4',
},
'key5': {
'key6': {
'key7': 'value7',
'key8': 'value8',
},
'key9': 'value9',
},
}
现在要根据另一个字典的键/值查询嵌套字典中的值,可以编写一个递归函数如下:
def search_nested_dict(nested_dict, search_dict):
for key, value in nested_dict.items():
if key == search_dict['key'] and value == search_dict['value']:
return value
elif isinstance(value, dict):
result = search_nested_dict(value, search_dict)
if result is not None:
return result
return None
使用方法如下:
search_dict = {'key': 'key7', 'value': 'value7'}
result = search_nested_dict(nested_dict, search_dict)
print(result) # 输出:value7
以上代码会根据传入的search_dict
中的键/值在nested_dict
中进行递归搜索,如果找到匹配的键/值对,则返回对应的值。若没有找到匹配的键/值对,则返回None
。
这种方法可以用于查询任意深度的嵌套字典,并且不限制嵌套字典的结构。
腾讯云相关产品推荐:云数据库 TencentDB、对象存储 COS
没有搜到相关的沙龙
领取专属 10元无门槛券
手把手带您无忧上云