如何仅获取与模式匹配的文件名

问题描述 投票:0回答:1

我具有以下功能,用于在目录中查找文件。

files = list(filter(lambda f: fnmatch.fnmatch(f, FILENAME +"*"), os.listdir(SRC_DIR)

这里是外观的示例

['data.txt',data.done,data_audit.done, data1.trans]

我想排除所有.Done文件。如何从列表中删除所有.done文件?

谢谢您的帮助

python python-3.x
1个回答
0
投票
对于我认为最简单的解决方案,您可以在一对条件上使用带有过滤器的列表推导。

files = [f for f in os.listdir(SRC_DIR) if f.startswith('data') and not f.endswith('.done')]

© www.soinside.com 2019 - 2024. All rights reserved.