我需要在目录“ 0000045”中加载诸如001.jpg,045.jpg等图像,但是文件夹“ image”中还有其他图像目录。我的代码是这样;
import glob
path = r'C:\Users\user\PycharmProjects\dg\image'
file_list = glob.glob(path)
file_list_jpg = [file for file in file_list if file.endswith(".jpg")]
print ("file_list_py: {}".format(file_list_jpg))
但结果是
file_list_py:[]
我想查看001.jpg,否则什么都没有:( 有人可以帮我解决这个问题吗?
答案 0 :(得分:0)
您的目录根结构为,
Image--
|
0000045--
|
(Image files with ".jpg" or anyother format )
但是根据您的代码
path = r'C:\Users\user\PycharmProjects\dg\image'
file_list = glob.glob(path)
您正在访问包含所有其他目录的图像目录(例如0000045 dir)。 因此,file_list将是目录名。
file_list_jpg = [file for file in file_list if file.endswith(".jpg")]
因此,file_list中没有以.jpg结尾的名称。因此,列表为空。
为了访问图像文件,
import glob
path = r'C:\Users\user\PycharmProjects\dg\image'
dir_list = glob.glob(path)
file_list = []
for directory in dir_list:
path = r'C:\Users\user\PycharmProjects\dg\image' +"\"+directory
file_list += glob.glob(path)
file_list_jpg = [file for file in file_list if file.endswith(".jpg")]