gpt4 book ai didi

Python如何删除带有黑名单不删除的项目列表

转载 作者:行者123 更新时间:2023-12-02 20:59:38 25 4
gpt4 key购买 nike

我有一个实用程序可以删除项目列表,但我想知道如何添加不删除项目的黑名单过滤器。

这就是我现在所拥有的,我运行脚本几次更改项目中的 if“语言”:行以删除不同的项目。

def delete_projects():
projects = get_projects()
# black_list = [some list of projects that I would like to delete but don't have an exact file name (i.e. "order-*")]
for project in projects:
if "Languages" in project:
delete_project(project)

我想这样做,这样我就可以获取项目列表,并使用 black_list 来检查名称类似于 xyz* 的项目而不删除。我怎样才能做这样的事情?

谢谢!

更新:这只是我目前的实现想法。用正则表达式来实现,并删除与正则表达式不匹配的项目是不是更好?如果这是可行的方法,我需要有关正则表达式的帮助。

最佳答案

创建一个仅包含名称在黑名单中的元素的新列表相对简单:

projects = [project for project in projects if project not in blacklist]

但是,当黑名单包含模式时,条件可能需要更复杂。排除与任何黑名单模式匹配的项目的一种方法是

projects = [p for p in projects if any(patt.match(p) for patt in blacklist)]

这将保留至少匹配一种模式的项目。

关于Python如何删除带有黑名单不删除的项目列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38978687/

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