gpt4 book ai didi

python - 打印包含另一个列表中所有字符串的子列表,不一定是直接匹配

转载 作者:太空宇宙 更新时间:2023-11-04 01:21:30 24 4
gpt4 key购买 nike

search_terms = ['word','cow','horse']

library = [['desk','chair','lamp'],['cow','horse','word 223','barn']]

我希望能够打印库中包含 search_terms 中所有术语的所有列表。

所以使用上面的 search_terms 列表将打印库中的第二个子列表,即使 'word 223' 只包含 'word',但不是直接匹配。

我不会总是有相同数量的字符串...

感谢所有愿意帮助我的人!

感谢 faltru 帮助我解决了我的第一个问题!

最佳答案

要获得命中,请使用列表理解:

search_terms = ['word', 'cow', 'horse']

library = [['desk', 'chair', 'lamp'],
['cow', 'horse', 'word 223', 'barn']]

hits = [l for l in library if
all(any(t in s for s in l)
for t in search_terms)]

工作原理如下

  1. library 中的每个子列表 l
  2. for all terms t in search_terms;
  3. if l中的字符串s中的任何一个包含它;
  4. l 保留在新列表 hits 中。

关于python - 打印包含另一个列表中所有字符串的子列表,不一定是直接匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20869575/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com