我有一个目录列表(它们的绝对路径)。每个目录包含一定数量的文件。在这些文件中,我想从每个目录中获取其中两个。我想要的两个文件名称中有一些字符串模式,为了这个例子,字符串将是'stringA','stringB'。
所以我需要的是一个元组列表。每个元组都应该有一个stringA
文件和一个stringB
文件。每个目录应该有一个元组。每个目录保证有超过2个文件,并且保证只有一个stringA
和一个stringB
文件。
最有效的方法是什么?也许使用列表生成器?
编辑:
一个例子:
dirs = ['/dir1', '/dir2', '/dir3']
result = [('/dir1/stringA.txt', '/dir1/stringB.txt'), ('/dir2/stringA.txt', ...) ...]
输入是目录(目录列表),输出应该是结果(元组列表)。
答案 0 :(得分:1)
看看这是否适合你:
import glob
result = zip(sorted(glob.glob('/dir/*stringA*')), sorted(glob.glob('/dir/*stringB*')))