我正在尝试找到如何获取包含特定文件扩展名的文件夹列表,这样只会给我文件夹并且只包含唯一文件夹。而且最快的方式。
那是否有一个班轮?
所以,如果我有
C:\ folderA \ test1.tga
C:\ folderA \ test2.tga
C:\ folderA \ test3.tga
c:\ folderB \ test4.tga
我想要
C:\ folderA \
c:\ folderB \
欢呼声
答案 0 :(得分:1)
不是单行,但是:
def findFolder(root, suffix):
for dirName in os.listdir(root):
dirPath = os.path.join(root, dirName)
if os.path.isdir(dirPath):
for fileName in os.listdir(dirPath):
if fileName.endswith(suffix):
yield dirPath # or dirName, whatever you like better
break
答案 1 :(得分:1)
有一个衬垫,但如果你使用更多的线条会更好看。
set(folder for folder, subfolders, files in os.walk('/') for file_ in files if os.path.splitext(file_)[1] == '.png')