简体   繁体   English

根据python中的另一个键值从字典(或json)中获取值

[英]Get value from dictionary (or json) based of another key value in python

I have a huge nested dictionary.我有一个巨大的嵌套字典。 Random levels deep full of nested lists and dictionaries.充满嵌套列表和字典的随机级别。

Somewhere down deep there is a dictionary of a form:在深处的某个地方有一个形式的字典:

{name:'jasdhsajkd', id:'23214rfrw4523rfew'} {名称:'jasdhsajkd',ID:'23214rfrw4523rfew'}

What I want to do is search in all keys for value of id above but get the value of name.我想要做的是在所有键中搜索上面 id 的值,但获取 name 的值。

Here is the json code for the dictionary:这是字典的json代码:

code代码

{"categories": [{"child_filter_groups": [{"icon_url": "https://main.cdn.wish.com/web/000e72f28bfa/img/filtered_feed/filter_feed_filter_color.png", "id": "Color", "filters": [{"child_filter_groups": [], "filter_id": "color_54089f882ee345121dfdddce", "name": "Bronze", "origin_name": "Bronze"}, {"child_filter_groups": [], "filter_id": "color_53dc217e21a8632b3c6e0734", "name": "Black", "origin_name": "Black"}, {"child_filter_groups": [], "filter_id": "color_53dc217e21a8632b3c6e0735", "name": "Blue", "origin_name": "Blue"}, {"child_filter_groups": [], "filter_id": "color_53dc217e21a8632b3c6e0736", "name": "Clear", "origin_name": "Clear"}, {"child_filter_groups": [], "filter_id": "color_53dc217e21a8632b3c6e0737", "name": "Gold", "origin_name": "Gold"}, {"child_filter_groups": [], "filter_id": "color_53dc217e21a8632b3c6e0738", "name": "Gray", "origin_name": "Gray"}, {"child_filter_groups": [], "filter_id": "color_53dc217e21a8632b3c6e0739", "name": "Green", "origin_name": "Green"}, {"child_filter_groups": [], "filter_id": "color_53dc217e21a8632b3c6e073a", "name": "Multi-Color", "origin_name": "Multi-Color"}, {"child_filter_groups": [], "filter_id": "color_53dc217e21a8632b3c6e073b", "name": "Orange", "origin_name": "Orange"}, {"child_filter_groups": [], "filter_id": "color_53dc217e21a8632b3c6e073c", "name": "Pink", "origin_name": "Pink"}, {"child_filter_groups": [], "filter_id": "color_53dc217e21a8632b3c6e073d", "name": "Red", "origin_name": "Red"}, {"child_filter_groups": [], "filter_id": "color_53dc217e21a8632b3c6e073e", "name": "Silver", "origin_name": "Silver"}, {"child_filter_groups": [], "filter_id": "color_53dc217e21a8632b3c6e0740", "name": "White", "origin_name": "White"}, {"child_filter_groups": [], "filter_id": "color_53dc217e21a8632b3c6e0741", "name": "Yellow", "origin_name": "Yellow"}, {"child_filter_groups": [], "filter_id": "color_53dc237a21a863307923e697", "name": "Brown", "origin_name": "Brown"}, {"child_filter_groups": [], "filter_id": "color_53dc36c521a86346c126eaf1", "name": "Purple", "origin_name": "Purple"}, {"child_filter_groups": [], "filter_id": "color_54889a49f8a0b3363e0ba1ef", "name": "Beige", "origin_name": "Beige"}], "name": "Color"}, {"icon_url": "https://main.cdn.wish.com/web/000e72f28bfa/img/filtered_feed/filter_feed_filter_rating.png", "name": "Rating", "is_exclusive": true, "filters": [{"child_filter_groups": [], "filter_id": "rating_4", "name": "\u2605\u2605\u2605\u2605 & up", "origin_name": null}, {"child_filter_groups": [], "filter_id": "rating_3", "name": "\u2605\u2605\u2605 & up", "origin_name": null}, {"child_filter_groups": [], "filter_id": "rating_2", "name": "\u2605\u2605 & up", "origin_name": null}, {"child_filter_groups": [], "filter_id": "rating_1", "name": "\u2605 & up", "origin_name": null}], "id": "Rating"}], "name": "Popular", "filter_id": "tabbed_feed_latest"}, {"wish_express_banner_info": "Get your Delivery by 18 Oct!", "name": null, "filter_id": "express__tab"}, {"red_dot_badge": true, "name": "Pickup", "filter_id": "pickup__tab"}, {"name": "Recently Viewed", "filter_id": "recently_viewed__tab"}, {"child_filter_groups": [], "red_dot_badge": true, "name": "Blitz Buy", "filter_id": "deal_dash__tab"}, {"child_filter_groups": [{"icon_url": ......................

I have a huge nested dictionary.我有一个巨大的嵌套字典。 Random levels deep full of nested lists and dictionaries.充满嵌套列表和字典的随机级别。

Somewhere down deep there is a dictionary of a form:在深处的某个地方有一个形式的字典:

{name:'jasdhsajkd', id:'23214rfrw4523rfew'} {名称:'jasdhsajkd',ID:'23214rfrw4523rfew'}

What I want to do is search in all keys for value of id above but get the value of name.我想要做的是在所有键中搜索上面 id 的值,但获取 name 的值。

Here is the json code for the dictionary:这是字典的json代码:

code代码

{"categories": [{"child_filter_groups": [{"icon_url": "https://main.cdn.wish.com/web/000e72f28bfa/img/filtered_feed/filter_feed_filter_color.png", "id": "Color", "filters": [{"child_filter_groups": [], "filter_id": "color_54089f882ee345121dfdddce", "name": "Bronze", "origin_name": "Bronze"}, {"child_filter_groups": [], "filter_id": "color_53dc217e21a8632b3c6e0734", "name": "Black", "origin_name": "Black"}, {"child_filter_groups": [], "filter_id": "color_53dc217e21a8632b3c6e0735", "name": "Blue", "origin_name": "Blue"}, {"child_filter_groups": [], "filter_id": "color_53dc217e21a8632b3c6e0736", "name": "Clear", "origin_name": "Clear"}, {"child_filter_groups": [], "filter_id": "color_53dc217e21a8632b3c6e0737", "name": "Gold", "origin_name": "Gold"}, {"child_filter_groups": [], "filter_id": "color_53dc217e21a8632b3c6e0738", "name": "Gray", "origin_name": "Gray"}, {"child_filter_groups": [], "filter_id": "color_53dc217e21a8632b3c6e0739", "name": "Green", "origin_name": "Green"}, {"child_filter_groups": [], "filter_id": "color_53dc217e21a8632b3c6e073a", "name": "Multi-Color", "origin_name": "Multi-Color"}, {"child_filter_groups": [], "filter_id": "color_53dc217e21a8632b3c6e073b", "name": "Orange", "origin_name": "Orange"}, {"child_filter_groups": [], "filter_id": "color_53dc217e21a8632b3c6e073c", "name": "Pink", "origin_name": "Pink"}, {"child_filter_groups": [], "filter_id": "color_53dc217e21a8632b3c6e073d", "name": "Red", "origin_name": "Red"}, {"child_filter_groups": [], "filter_id": "color_53dc217e21a8632b3c6e073e", "name": "Silver", "origin_name": "Silver"}, {"child_filter_groups": [], "filter_id": "color_53dc217e21a8632b3c6e0740", "name": "White", "origin_name": "White"}, {"child_filter_groups": [], "filter_id": "color_53dc217e21a8632b3c6e0741", "name": "Yellow", "origin_name": "Yellow"}, {"child_filter_groups": [], "filter_id": "color_53dc237a21a863307923e697", "name": "Brown", "origin_name": "Brown"}, {"child_filter_groups": [], "filter_id": "color_53dc36c521a86346c126eaf1", "name": "Purple", "origin_name": "Purple"}, {"child_filter_groups": [], "filter_id": "color_54889a49f8a0b3363e0ba1ef", "name": "Beige", "origin_name": "Beige"}], "name": "Color"}, {"icon_url": "https://main.cdn.wish.com/web/000e72f28bfa/img/filtered_feed/filter_feed_filter_rating.png", "name": "Rating", "is_exclusive": true, "filters": [{"child_filter_groups": [], "filter_id": "rating_4", "name": "\u2605\u2605\u2605\u2605 & up", "origin_name": null}, {"child_filter_groups": [], "filter_id": "rating_3", "name": "\u2605\u2605\u2605 & up", "origin_name": null}, {"child_filter_groups": [], "filter_id": "rating_2", "name": "\u2605\u2605 & up", "origin_name": null}, {"child_filter_groups": [], "filter_id": "rating_1", "name": "\u2605 & up", "origin_name": null}], "id": "Rating"}], "name": "Popular", "filter_id": "tabbed_feed_latest"}, {"wish_express_banner_info": "Get your Delivery by 18 Oct!", "name": null, "filter_id": "express__tab"}, {"red_dot_badge": true, "name": "Pickup", "filter_id": "pickup__tab"}, {"name": "Recently Viewed", "filter_id": "recently_viewed__tab"}, {"child_filter_groups": [], "red_dot_badge": true, "name": "Blitz Buy", "filter_id": "deal_dash__tab"}, {"child_filter_groups": [{"icon_url": ......................

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM