[英]Getting keys and values of dictionary if key in list
所以我有一個字典名稱“ngrams_count”。 我想在這個字典中找到名為“words_to_find”的列表中的所有鍵。 我還想返回與這些鍵關聯的值。
到目前為止,這就是我正在使用的
ideasrep = [key for key in words_to_find if key in ngrams_count]
這僅返回在單詞列表中找到的鍵。
我也在尋找一種方法來只返回值大於一個的鍵/值對。 我嘗試過類似的技術:
[(key,values) for key, values in ngrams_count.items() if values > 1]
但是,這似乎只有在我留在字典中並且我的想法已經用完時才有效......理想情況下,我想要一種同時做這兩件事的方法。
您的第一個版本幾乎是正確的,您只需將ngrams_count[key]
添加到結果中。
ideasrep = [(key, ngrams_count[key]) for key in words_to_find if key in ngrams_count]
或者您可以使用第二個版本,但更改條件以檢查密鑰是否在words_to_find
中。
[(key,values) for key, values in ngrams_count.items() if key in words_to_find]
如果words_to_find
很大,則應在列表推導之前將其轉換為set
,以使第二個版本更高效。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.