gpt4 book ai didi

python - 集合中的任何项目都与另一个项目中的任何项目相匹配

转载 作者:行者123 更新时间:2023-12-01 04:27:57 25 4
gpt4 key购买 nike

我想定义类似 nameFilters 的东西,然后从给定字符串列表中检查是否有任何 nameFilters 适合字符串,因此某种伪代码如下所示:

if any from filters in strings:
#do the job

其中filter实际上只是我们要在字符串中查找的子字符串。

当然可以通过困难的方式来完成:

for filter in filters:
for string in strings:
if filter in string:
# do the job

但是它不可读并且有很多嵌套。 Python 通常是一种可以以极易读的方式执行操作的语言,但我找不到解决此特定问题的语言。

最佳答案

看来您正在尝试通过过滤器列表过滤字符串列表...如果任何过滤器与字符串的任何部分匹配,则字符串匹配

 matches = [s for s in strings if any(f in s for f in filters))]

但我不确定这比你的其他解决方案更具可读性,它只是在一行中......

如果你想对它们做一些事情,你可以将其更改为迭代器理解而不是列表理解,这样你就只会评估它一次

matches = (s for s in strings if any(f in s for f in filters)))
for m in matches:
do_something(m)

关于python - 集合中的任何项目都与另一个项目中的任何项目相匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32827687/

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