我试图同时迭代2个文件夹,因为我想处理两个不同位置的图像对,不幸的是listdir只需要1个参数,因此它不允许我迭代两个文件夹列表例如。还有其他方法可以做到这一点吗?谢谢
mypath2 = os.path.join('c:\\trainstcolor2')
images2 = list()
mypath = os.path.join('c:\\trainst2')
images = list()
for item,item2 in os.listdir(mypath,mypath2):
image = cv2.imread(os.path.join(mypath, item))
image2 = cv2.imread(os.path.join(mypath2, item2))
if image is not None:
images.append(image)
images2.append(image2)
答案 0 :(得分:4)
您不希望使用os.listdir
原样,因为(来自documentation):
[返回]列表[文件]按任意顺序排列。
因此,您可能需要以下内容:
images1 = sorted(os.listdir(mypath))
images2 = sorted(os.listdir(mypath2))
for item, item2 in zip(images1, images2):
# ...