gpt4 book ai didi

python - 检查列表中的任何元素是否存在于python列表的元素中

转载 作者:太空宇宙 更新时间:2023-11-04 00:27:50 25 4
gpt4 key购买 nike

我正在尝试为某些事件解析日志文件。由于日志文件可能非常大,因此有必要过滤掉对我们需要它的应用程序不感兴趣的行。这个想法是我用我想要查找的 4 或 5 个字符串创建一个列表,然后循环遍历另一个列表中的行,该列表包含我保留的日志文件行。

日志文件是代理的日志,用于查看请求来自哪里通过在行中查找“GET/”并只存储其中包含的那些,第一次减少很容易。

with open('logfile', 'r') as f:
for line in f:
if "GET /" in line:
lines.append(line)

然后需要将列表“行”缩减为包含 url 中多个字符串之一的行

l1 = ['/Treintickets/aankopen', '/booking/Tickets', '/Acheter/Billets', ...]

我尝试了列表推导式,但没有成功:

result = [l for l in lines if l1 in l]

有没有办法让它工作而不必为“l1”的每个成员遍历大列表行?

最佳答案

您可以使用内置函数any:

result = [line for line in lines if any(substring in line for substring in l1)]

或者,您可以考虑为此使用正则表达式。

关于python - 检查列表中的任何元素是否存在于python列表的元素中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46858584/

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