gpt4 book ai didi

python - os.walk 给出不存在的目录

转载 作者:行者123 更新时间:2023-12-01 01:07:41 27 4
gpt4 key购买 nike

我有一个文件夹,其中有对应10个不同类的子文件夹,这些子文件夹的名称就是我的标签。我想出了以下代码将图像读入 Numpy 数组并保存标签。

import numpy as np
import pandas as pd
import cv2
import glob
import os

x=np.empty([28,28])
y=np.empty([1,0])

for root, dirs, files in os.walk("filepath"):
for roots in root:
os.chdir(roots)
images = np.array([cv2.imread(file) for file in glob.glob(roots+"/*.jpg")])
num_of_images=images.shape[0]
if num_of_images == 0:
continue
else:
x = np.concatenate((x,images),axis=0)
labels = np.empty([num_of_images,1])
labels = labels.astype(str)
#labels = get from last part of file name in roots
#y=np.concatenate((y,labels),axis=0)

我收到的错误是

os.chdir(roots) FileNotFoundError: [Errno 2] No such file or directory: 'U'

当我print(root)时,它给出了正确的子文件夹路径。我该如何处理这个错误?

编辑:通过删除 root 中的根来使其工作,因为 os.walk 为每个目录返回一个 3 元组,其中 root 为我们提供了目录路径。

最佳答案

docs on os.walk()比如说,它返回的每个三元组中的第一项是一个字符串。因此,for root in root: 会迭代字符串的字符。您需要仔细阅读 os.walk() 返回什么样的数据结构,并相应地重组您的脚本。

关于python - os.walk 给出不存在的目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55182702/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com