[英]python / os.listdir/ reading subfodlers
在OSX上使用python 3.5在'/ Users / abs / Desktop / data'中有5个子文件夹,我正在尝试查找所有子文件夹。 但是我收到一个错误NotADirectoryError:[Errno 20]不是目录:'/Users/abs/Desktop/data/.DS_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))
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.