Python如何筛选包含指定列表元素的文件路径
错误原因
你的判断条件i in my_list是将路径的完整字符串和my_list里的元素做完全相等匹配,而path_list里没有任何元素和service、confidential完全一致,自然没有输出结果。
解决方法
调整判断逻辑,改为校验路径字符串是否包含my_list中的任意一个关键词即可,推荐使用any()函数实现多关键词的存在校验:
# 常规循环写法 for path in path_list: if any(keyword in path for keyword in my_list): print(path)
如果需要先保存匹配结果再处理,可以用列表推导式生成匹配的路径列表:
# 先筛选再打印 matched_paths = [path for path in path_list if any(keyword in path for keyword in my_list)] for p in matched_paths: print(p)
注意:不推荐用列表推导式单纯执行
内容的提问来源于stack exchange,提问作者Chel MS
相关产品推荐
相关产品推荐

