从字典列表中过滤和提取元素

我有一个命名元组列表如下


record = [({

   "first_name":"nadbor",

   "last_name":"drozd",

   "occupation":"data scientist",

   "markingAgentUsed":[

      {

         "consumableLabelCode":"L",

          "amountUsed":{

            "amount" : 100,

            "unit": "litre"

          }

      },

     {

         "consumableLabelCode":"Y",

          "amountUsed":{

            "amount" : 300,

            "unit": "mililitre"

          }

      },

     {

         "consumableLabelCode":"0",

          "amountUsed":{

            "amount" : 999,

            "unit": "gallon"

          }

      }

   ]

})]



[{'first_name': 'nadbor', 'last_name': 'drozd', 'occupation': 'data scientist', 'markingAgentUsed': [{'consumableLabelCode': 'L', 'amountUsed': {'amount': 100, 'unit': 'litre'}}, {'consumableLabelCode': 'Y', 'amountUsed': {'amount': 300, 'unit': 'mililitre'}}, {'consumableLabelCode': '0', 'amountUsed': {'amount': 999, 'unit': 'gallon'}}]}]

我想根据 LabelCode 的输入参数提取值,我想提取两个值 amount 和 unit。


例如,如果我通过 O,我应该得到 999 和加仑作为输出。


梵蒂冈之花
浏览 92回答 2
2回答

青春有我

record = [({   "first_name":"nadbor",   "last_name":"drozd",   "occupation":"data scientist",   "markingAgentUsed":[      {         "consumableLabelCode":"L",          "amountUsed":{            "amount" : 100,            "unit": "litre"          }      },     {         "consumableLabelCode":"Y",          "amountUsed":{            "amount" : 300,            "unit": "mililitre"          }      },     {         "consumableLabelCode":"0",          "amountUsed":{            "amount" : 999,            "unit": "gallon"          }      }   ]})]userKey = '0'for entry in record[0]['markingAgentUsed']:    if entry['consumableLabelCode'] == userKey:        print("Amount - {}".format(entry['amountUsed']['amount']) )        print("Units - {}".format(entry['amountUsed']['unit']) )

四季花海

这一切都是关于理解数据结构的嵌套(这不是一个命名的元组,而是一个字典元组列表和一个字典列表,其中一些键本身就是字典:-/很少!这段代码提取了你的内容要求:inp = '0'for ma in record[0]['markingAgentUsed']:    if ma['consumableLabelCode'] == inp:        print(ma['amountUsed']['amount'], ma['amountUsed']['unit'])
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python