我在尝试从文件夹内的子文件夹中读取时遇到了困难。我想做的是:我有我的路径"C:\Dataset",其中有两个文件夹,里面有两个文件夹,我的人名有图片,例如:"C:\Dataset\Drunk\JohnDoe\Pic1","C:\Dataset\Sober\JaneDoe\Pic1"。我希望能够读取每张图片并将它们存储在路径变量中。目前,到目前为止,我得到的基本上是图像,只要它们仅在 Drunk 和 Sober 中,例如:'C:\Dataset\Drunk\Pic1',我用来做的代码是这样的:DATADIR = "C:\Dataset"CATEGORIES = ["Positive", "Negative"]for category in CATEGORIES: path = os.path.join(DATADIR, category) for img in os.listdir(path): img_path = os.path.join(path,img) img_data = open(img_path, 'r').read() break break基本上,我想要做的是,当我在 Drunk 文件夹中进行迭代时,它也会在内部文件夹中进行迭代,读取位于C:\Dataset\Drunk\JohnDoe\nthPic、C:\Dataset\Drunk\JoeDoe\nthPic、中的图片的路径C:\Dataset\Drunk and Sober \nthJoe\nthPic C:\Dataset\Drunk\JamesDoe\nthPic。因此,当我阅读时,它会抓取整个文件夹图这基本上是我的目标。
1 回答
临摹微笑
TA贡献1982条经验 获得超2个赞
您还需要一个嵌套:它将所有图像保存在字典images中,键是完整路径。
DATADIR = "C:\Dataset"
CATEGORIES = ["Drunk", "Sober"]
images = {}
for category in CATEGORIES:
path = os.path.join(DATADIR, category)
for person in os.listdir(path):
personfolder = os.path.join(path, person):
for imgname in os.listdir(personfolder):
fullpath = os.path.join(personfolder, imgname)
images[fullpath] = open(fullpath, 'r').read()
添加回答
举报
0/150
提交
取消