{"id":14925,"date":"2024-03-15T10:11:32","date_gmt":"2024-03-15T10:11:32","guid":{"rendered":"https:\/\/www.silicloud.com\/blog\/how-to-search-for-values-in-a-multi-level-nested-dictionary-using-python\/"},"modified":"2025-08-06T14:16:32","modified_gmt":"2025-08-06T14:16:32","slug":"how-to-search-for-values-in-a-multi-level-nested-dictionary-using-python","status":"publish","type":"post","link":"https:\/\/www.silicloud.com\/blog\/how-to-search-for-values-in-a-multi-level-nested-dictionary-using-python\/","title":{"rendered":"How to search for values in a multi-level nested dictio&#8230;"},"content":{"rendered":"<p>To search for the values in a deeply nested dictionary, you can use a recursive method. Here is an example code:<\/p>\n<pre class=\"post-pre\"><code><span class=\"hljs-keyword\">def<\/span> <span class=\"hljs-title function_\">find_value<\/span>(<span class=\"hljs-params\">nested_dict, keys<\/span>):\r\n    <span class=\"hljs-keyword\">if<\/span> <span class=\"hljs-built_in\">len<\/span>(keys) == <span class=\"hljs-number\">1<\/span>:\r\n        <span class=\"hljs-keyword\">return<\/span> nested_dict.get(keys[<span class=\"hljs-number\">0<\/span>])\r\n    <span class=\"hljs-keyword\">else<\/span>:\r\n        key = keys[<span class=\"hljs-number\">0<\/span>]\r\n        <span class=\"hljs-keyword\">if<\/span> key <span class=\"hljs-keyword\">in<\/span> nested_dict:\r\n            <span class=\"hljs-keyword\">return<\/span> find_value(nested_dict[key], keys[<span class=\"hljs-number\">1<\/span>:])\r\n        <span class=\"hljs-keyword\">else<\/span>:\r\n            <span class=\"hljs-keyword\">return<\/span> <span class=\"hljs-literal\">None<\/span>\r\n\r\n<span class=\"hljs-comment\"># \u793a\u4f8b\u5b57\u5178<\/span>\r\nexample_dict = {\r\n    <span class=\"hljs-string\">'a'<\/span>: {\r\n        <span class=\"hljs-string\">'b'<\/span>: {\r\n            <span class=\"hljs-string\">'c'<\/span>: <span class=\"hljs-number\">123<\/span>\r\n        }\r\n    }\r\n}\r\n\r\n<span class=\"hljs-comment\"># \u67e5\u627e\u503c<\/span>\r\nkeys = [<span class=\"hljs-string\">'a'<\/span>, <span class=\"hljs-string\">'b'<\/span>, <span class=\"hljs-string\">'c'<\/span>]\r\nvalue = find_value(example_dict, keys)\r\n<span class=\"hljs-built_in\">print<\/span>(value)  <span class=\"hljs-comment\"># \u8f93\u51fa: 123<\/span>\r\n<\/code><\/pre>\n<p>In this example, the find_value function takes two parameters: nested_dict representing a nested dictionary, and keys representing the list of keys to search for. The function first checks the length of the keys list. If it only has one element, it directly returns the corresponding value. If the length of the keys list is greater than 1, it takes the first key as the key at the current level and searches for the corresponding value in nested_dict. If the key exists, the find_value function is recursively called to continue searching for the value at the next level; if the key does not exist, it returns None to indicate that it was not found.<\/p>\n<p>By calling the find_value function with the example dictionary example_dict and the keys to search for [&#8216;a&#8217;, &#8216;b&#8217;, &#8216;c&#8217;], it will return the value 123.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>To search for the values in a deeply nested dictionary, you can use a recursive method. Here is an example code: def find_value(nested_dict, keys): if len(keys) == 1: return nested_dict.get(keys[0]) else: key = keys[0] if key in nested_dict: return find_value(nested_dict[key], keys[1:]) else: return None # \u793a\u4f8b\u5b57\u5178 example_dict = { &#8216;a&#8217;: { &#8216;b&#8217;: { &#8216;c&#8217;: 123 [&hellip;]<\/p>\n","protected":false},"author":10,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_import_markdown_pro_load_document_selector":0,"_import_markdown_pro_submit_text_textarea":"","footnotes":""},"categories":[1],"tags":[453,1402,299,1404,1403],"class_list":["post-14925","post","type-post","status-publish","format-standard","hentry","category-uncategorized","tag-development","tag-guide","tag-programming","tag-technology","tag-tutorial"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v21.5 (Yoast SEO v21.5) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>How to search for values in a multi-level nested dictio... - Blog - Silicon Cloud<\/title>\n<meta name=\"description\" content=\"Learn about how to search for values in a multi-level nested dictionary using python.. Comprehensive guide with examples and best practices.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.silicloud.com\/blog\/how-to-search-for-values-in-a-multi-level-nested-dictionary-using-python\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How to search for values in a multi-level nested dictio...\" \/>\n<meta property=\"og:description\" content=\"Learn about how to search for values in a multi-level nested dictionary using python.. Comprehensive guide with examples and best practices.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.silicloud.com\/blog\/how-to-search-for-values-in-a-multi-level-nested-dictionary-using-python\/\" \/>\n<meta property=\"og:site_name\" content=\"Blog - Silicon Cloud\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/SiliCloudGlobal\/\" \/>\n<meta property=\"article:published_time\" content=\"2024-03-15T10:11:32+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-08-06T14:16:32+00:00\" \/>\n<meta name=\"author\" content=\"Jackson Davis\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@SiliCloudGlobal\" \/>\n<meta name=\"twitter:site\" content=\"@SiliCloudGlobal\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Jackson Davis\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-search-for-values-in-a-multi-level-nested-dictionary-using-python\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-search-for-values-in-a-multi-level-nested-dictionary-using-python\/\"},\"author\":{\"name\":\"Jackson Davis\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/55a10b8b0457c35884c25677889ad350\"},\"headline\":\"How to search for values in a multi-level nested dictio&#8230;\",\"datePublished\":\"2024-03-15T10:11:32+00:00\",\"dateModified\":\"2025-08-06T14:16:32+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-search-for-values-in-a-multi-level-nested-dictionary-using-python\/\"},\"wordCount\":173,\"publisher\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#organization\"},\"keywords\":[\"Development\",\"guide\",\"programming\",\"technology\",\"tutorial\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-search-for-values-in-a-multi-level-nested-dictionary-using-python\/\",\"url\":\"https:\/\/www.silicloud.com\/blog\/how-to-search-for-values-in-a-multi-level-nested-dictionary-using-python\/\",\"name\":\"How to search for values in a multi-level nested dictio... - Blog - Silicon Cloud\",\"isPartOf\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#website\"},\"datePublished\":\"2024-03-15T10:11:32+00:00\",\"dateModified\":\"2025-08-06T14:16:32+00:00\",\"description\":\"Learn about how to search for values in a multi-level nested dictionary using python.. Comprehensive guide with examples and best practices.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-search-for-values-in-a-multi-level-nested-dictionary-using-python\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.silicloud.com\/blog\/how-to-search-for-values-in-a-multi-level-nested-dictionary-using-python\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-search-for-values-in-a-multi-level-nested-dictionary-using-python\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.silicloud.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"How to search for values in a multi-level nested dictio&#8230;\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#website\",\"url\":\"https:\/\/www.silicloud.com\/blog\/\",\"name\":\"Silicon Cloud Blog\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#organization\"},\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#organization\",\"name\":\"Silicon Cloud Blog\",\"url\":\"https:\/\/www.silicloud.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.silicloud.com\/blog\/wp-content\/uploads\/2023\/11\/EN-SILICON-Full.png\",\"contentUrl\":\"https:\/\/www.silicloud.com\/blog\/wp-content\/uploads\/2023\/11\/EN-SILICON-Full.png\",\"width\":1024,\"height\":1024,\"caption\":\"Silicon Cloud Blog\"},\"image\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/SiliCloudGlobal\/\",\"https:\/\/twitter.com\/SiliCloudGlobal\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/55a10b8b0457c35884c25677889ad350\",\"name\":\"Jackson Davis\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/2fdb47d6df1226e92380d96973782572a97b0675d098bb914410dec348eb5d29?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/2fdb47d6df1226e92380d96973782572a97b0675d098bb914410dec348eb5d29?s=96&d=mm&r=g\",\"caption\":\"Jackson Davis\"},\"url\":\"https:\/\/www.silicloud.com\/blog\/author\/jacksondavis\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"How to search for values in a multi-level nested dictio... - Blog - Silicon Cloud","description":"Learn about how to search for values in a multi-level nested dictionary using python.. Comprehensive guide with examples and best practices.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.silicloud.com\/blog\/how-to-search-for-values-in-a-multi-level-nested-dictionary-using-python\/","og_locale":"en_US","og_type":"article","og_title":"How to search for values in a multi-level nested dictio...","og_description":"Learn about how to search for values in a multi-level nested dictionary using python.. Comprehensive guide with examples and best practices.","og_url":"https:\/\/www.silicloud.com\/blog\/how-to-search-for-values-in-a-multi-level-nested-dictionary-using-python\/","og_site_name":"Blog - Silicon Cloud","article_publisher":"https:\/\/www.facebook.com\/SiliCloudGlobal\/","article_published_time":"2024-03-15T10:11:32+00:00","article_modified_time":"2025-08-06T14:16:32+00:00","author":"Jackson Davis","twitter_card":"summary_large_image","twitter_creator":"@SiliCloudGlobal","twitter_site":"@SiliCloudGlobal","twitter_misc":{"Written by":"Jackson Davis","Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.silicloud.com\/blog\/how-to-search-for-values-in-a-multi-level-nested-dictionary-using-python\/#article","isPartOf":{"@id":"https:\/\/www.silicloud.com\/blog\/how-to-search-for-values-in-a-multi-level-nested-dictionary-using-python\/"},"author":{"name":"Jackson Davis","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/55a10b8b0457c35884c25677889ad350"},"headline":"How to search for values in a multi-level nested dictio&#8230;","datePublished":"2024-03-15T10:11:32+00:00","dateModified":"2025-08-06T14:16:32+00:00","mainEntityOfPage":{"@id":"https:\/\/www.silicloud.com\/blog\/how-to-search-for-values-in-a-multi-level-nested-dictionary-using-python\/"},"wordCount":173,"publisher":{"@id":"https:\/\/www.silicloud.com\/blog\/#organization"},"keywords":["Development","guide","programming","technology","tutorial"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.silicloud.com\/blog\/how-to-search-for-values-in-a-multi-level-nested-dictionary-using-python\/","url":"https:\/\/www.silicloud.com\/blog\/how-to-search-for-values-in-a-multi-level-nested-dictionary-using-python\/","name":"How to search for values in a multi-level nested dictio... - Blog - Silicon Cloud","isPartOf":{"@id":"https:\/\/www.silicloud.com\/blog\/#website"},"datePublished":"2024-03-15T10:11:32+00:00","dateModified":"2025-08-06T14:16:32+00:00","description":"Learn about how to search for values in a multi-level nested dictionary using python.. Comprehensive guide with examples and best practices.","breadcrumb":{"@id":"https:\/\/www.silicloud.com\/blog\/how-to-search-for-values-in-a-multi-level-nested-dictionary-using-python\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.silicloud.com\/blog\/how-to-search-for-values-in-a-multi-level-nested-dictionary-using-python\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.silicloud.com\/blog\/how-to-search-for-values-in-a-multi-level-nested-dictionary-using-python\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.silicloud.com\/blog\/"},{"@type":"ListItem","position":2,"name":"How to search for values in a multi-level nested dictio&#8230;"}]},{"@type":"WebSite","@id":"https:\/\/www.silicloud.com\/blog\/#website","url":"https:\/\/www.silicloud.com\/blog\/","name":"Silicon Cloud Blog","description":"","publisher":{"@id":"https:\/\/www.silicloud.com\/blog\/#organization"},"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.silicloud.com\/blog\/#organization","name":"Silicon Cloud Blog","url":"https:\/\/www.silicloud.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.silicloud.com\/blog\/wp-content\/uploads\/2023\/11\/EN-SILICON-Full.png","contentUrl":"https:\/\/www.silicloud.com\/blog\/wp-content\/uploads\/2023\/11\/EN-SILICON-Full.png","width":1024,"height":1024,"caption":"Silicon Cloud Blog"},"image":{"@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/SiliCloudGlobal\/","https:\/\/twitter.com\/SiliCloudGlobal"]},{"@type":"Person","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/55a10b8b0457c35884c25677889ad350","name":"Jackson Davis","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/2fdb47d6df1226e92380d96973782572a97b0675d098bb914410dec348eb5d29?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/2fdb47d6df1226e92380d96973782572a97b0675d098bb914410dec348eb5d29?s=96&d=mm&r=g","caption":"Jackson Davis"},"url":"https:\/\/www.silicloud.com\/blog\/author\/jacksondavis\/"}]}},"_links":{"self":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts\/14925","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/users\/10"}],"replies":[{"embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/comments?post=14925"}],"version-history":[{"count":2,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts\/14925\/revisions"}],"predecessor-version":[{"id":158844,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts\/14925\/revisions\/158844"}],"wp:attachment":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/media?parent=14925"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/categories?post=14925"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/tags?post=14925"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}