gpt4 book ai didi

python - 检查列表的元素是否包含另一个列表的所有元素的有效方法

转载 作者:太空宇宙 更新时间:2023-11-03 13:57:17 25 4
gpt4 key购买 nike

我有一个名为 strList 的字符串列表,其中包含大约 800,000-2,200,000 元素。每个元素包含大约 100 个字符。我有另一个名为 findStrs 的字符串列表,它通常包含少于 5 元素(5 到 10 个字符的字符串)。我想选择包含 findStrs 中所有元素的 strList 元素。我怎样才能在Python中有效地做到这一点?这是我的做法,但我想知道是否有更有效的解决方案使用列表理解来做到这一点:

finalStrList = []
for strr in strList:
temp = []
for findStr in findStrs:
if findStr in strr:
temp.append(findStr)
if len(temp) == len(findStrs):
finalStrList.append(str)
print(finalStrList)

我也尝试设计一种基于列表理解的方法,但毫不奇怪,它不起作用:

[strr for strr in strList if [findStr in strr for findStr in findStrs]]

最佳答案

juanpa.arrivillaga在评论部分中建议我可以使用以下基于列表理解的解决方案轻松完成我想做的事情:

[s for s in strList if all([x in s for x in findStrs])]

关于python - 检查列表的元素是否包含另一个列表的所有元素的有效方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49502908/

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