2024-05-19 21:14:55 发布
网友
在文件cmp.dircmp用于比较两个文件夹。 它接受一个参数ignore,但它只进行精确匹配而不是通配符匹配。知道如何忽略模式吗?在
ignore
您可以使用globhttps://docs.python.org/3/library/glob.html展开模式并将展开的列表提供给ignore参数。在
假设您有folder left和folder right,然后希望从比较中筛选出所有*.foo和*.bar
import os import glob import filecmp ignore_list = [] patterns_to_ignore = ['*.foo', '*.bar'] for pattern in patterns_to_ignore: ignore_left = [os.path.split(expanded)[1] for expanded in glob.glob(os.path.join(left, pattern))] ignore_right = [os.path.split(expanded)[1] for expanded in glob.glob(os.path.join(right, pattern))] ignore_list.extend(ignore_left) ignore_list.extend(ignore_right) diff = filecmp.dircmp(left, right, ignore=ignore_list)
您可以使用globhttps://docs.python.org/3/library/glob.html展开模式并将展开的列表提供给ignore参数。在
假设您有folder left和folder right,然后希望从比较中筛选出所有*.foo和*.bar
相关问题 更多 >
编程相关推荐