我正在尝试使用glob.glob在一系列目录中读取相同名称的文件,但我想跳过某些特定目录。 我的目录名称类似于trj0001,..,trj0099,我想跳过它们的列表,例如:list = [trj0005,trj0009,trj0011,trj0056,trj0083]。
我当前正在使用此行:
files = glob.glob(r'my_dir/trj_00*/file.txt')
任何提示都值得赞赏。
答案 0 :(得分:0)
除非您要匹配除匹配某些模式的文件之外的所有文件,否则没有简单的方法可以在使用glob
时跳过某些文件。
因此您可以使用filter
exclude_list = [trj0005, trj0009, trj0011, trj0056, trj0083]
files = filter(lambda path: not any(e in path for e in exclude_list), glob.glob(r'my_dir/trj_00*'))
答案 1 :(得分:0)
我建议您使用<chrono>
,使用易于理解的列表理解来过滤列表之后,如下所示:
glob