[英]Comparing a list to each value of dictionary (which are a list of strings)
我有一個要與字典進行比較的葯品清單,其中字典鍵是葯品代碼,字典值是葯品清單。 我只想保留字典中與毒品清單相對應的毒品。
示例列表:
l = ['sodium', 'nitrogen', 'phosphorus']
和字典:
d = {'A02A4': ['sodium', 'nitrogen', 'carbon']}
我希望我的最終字典看起來像:
{'A02A4': ['nitrogen', 'sodium']}
刪除列表中不存在的值,並針對字典中的所有鍵,值對執行此操作
您可以使用字典理解並設置為僅保留與列表相交的值:
l = ['sodium', 'nitrogen', 'phosphorus']
d = {'A02A4': ['sodium', 'nitrogen', 'carbon']}
{i: list(set(v) & set(l)) for i,v in d.items()}
{'A02A4': ['nitrogen', 'sodium']}
或者等效地,使用intersection
:
{i: list(set(v).intersection(l)) for i,v in d.items()}
{'A02A4': ['nitrogen', 'sodium']}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.