python/os.listdir/读取子文件夹

python/os.listdir/读取子文件夹,python,directory,Python,Directory,在OSX上使用python 3.5 “/Users/abs/Desktop/data”中有5个子文件夹,我正在尝试查找所有子文件夹。但是我得到一个错误NotADirectoryError:[Errno 20]不是目录:'/Users/abs/Desktop/data/.DS\u Store' 如何解决此问题 data_path = '/Users/abs/Desktop/data' data_dir_list = os.listdir(data_path) for dataset in dat

在OSX上使用python 3.5 “/Users/abs/Desktop/data”中有5个子文件夹,我正在尝试查找所有子文件夹。但是我得到一个错误NotADirectoryError:[Errno 20]不是目录:'/Users/abs/Desktop/data/.DS\u Store' 如何解决此问题

data_path = '/Users/abs/Desktop/data'
data_dir_list = os.listdir(data_path)

for dataset in data_dir_list:
    img_list=os.listdir(data_path+'/'+dataset)
    print ('Loaded the images of dataset-'+'{}\n'.format(dataset))

跳过引发异常的条目:

import os
data_path = '/Users/abs/Desktop/data'
data_dir_list = os.listdir(data_path)

for dataset in data_dir_list:
    try:
        img_list=os.listdir(data_path+'/'+dataset)
        print ('Loaded the images of dataset-'+'{}\n'.format(dataset))
    except NotADirectoryError:
        pass

如果深度固定,
glob
是个好主意:

import glob,os.path
fd3 = glob.glob('/Users/abs/Desktop/data/*/*/*')
dd3 = filter(lambda f: os.path.isdir(f), fd3)
for f in dd3:
    print(f)

您可以检查数据集是否为目录

data_path = '/Users/abs/Desktop/data'
data_dir_list = os.listdir(data_path)

for dataset in data_dir_list:
    if os.path.isdir(os.path.join(data_path, dataset): # <-- if it is a directory
        img_list=os.listdir(data_path+'/'+dataset)
        print ('Loaded the images of dataset-'+'{}\n'.format(dataset))
data\u path='/Users/abs/Desktop/data'
data\u dir\u list=os.listdir(数据路径)
对于数据目录列表中的数据集:
如果os.path.isdir(os.path.join(数据路径,数据集):#