我正在解析包含成分的字符串。
我把字符串分成单词列表
例如:
list1 = ['favorite','olive','oil']
list2 = ['favorite','oil']
我有一个清单,需要与清单中的单词匹配。例如,
ingredients = ['sesame oil', 'olive oil', 'olive juice', 'oil']
我需要一个在第一种情况下返回
olive oil
在第二种情况下返回oil
的函数。任何提示和建议都将受到高度赞赏。
最佳答案
这将提供列表之一和成分之间的重叠列表。如果列表中的成分集中有多个项目,这可能很有用。
def ingredient_checker(checklist):
ingredients = ['sesame oil', 'olive oil', 'olive juice', 'oil']
return [item for item in set(checklist).intersection(ingredients)]
>>> list3 = ['favorite','olive','oil', 'olive juice']
>>> ingredient_checker(list3)
['oil', 'olive juice']