如何在python中将不同的图像保存到不同的目录中?

如何在python中将不同的图像保存到不同的目录中?,python,for-loop,mkdir,Python,For Loop,Mkdir,我想在4个目录中保存4个图像,目录名为4,5,6,7(例如,目录4中的图像1和目录5中的图像2等等),但我的for循环似乎不正确,只保存了目录4中的最后一个图像 import numpy as np import matplotlib.pyplot as plt import os pixels = 600 my_dpi = 100 num_geo=3 coord = np.array([[[-150, -200], [300, -200], [300, 0], [150, 200], [-

我想在4个目录中保存4个图像,目录名为4,5,6,7(例如,目录4中的图像1和目录5中的图像2等等),但我的for循环似乎不正确,只保存了目录4中的最后一个图像

import numpy as np
import matplotlib.pyplot as plt
import os

pixels = 600
my_dpi = 100
num_geo=3

coord = np.array([[[-150, -200], [300, -200], [300, 0], [150, 200], [-150, 200]],
                  [[-300, -200], [200, -300], [200, -50], [200, 300], [-150, 200]],
                  [[-140, -230], [350, -260], [350, 0], [140, 200], [-180, 220]],
                  [[-180, -240], [370, -270], [370, 0], [170, 200], [-190, 230]]])

for i in range(4):
    geo = coord[i, :, :]
    print(coord[i])
    fig = plt.figure(num_geo,figsize=( pixels/my_dpi,  pixels/my_dpi),facecolor='k', dpi=my_dpi)  
    plt.axes([0,0,1,1])
    rectangle = plt.Rectangle((-300, -300), 600, 600, fc='k')
    plt.gca().add_patch(rectangle)
    polygon = plt.Polygon(coord[i],color='w')
    plt.gca().add_patch(polygon)
    plt.axis('off')
    plt.axis([-300,300,-300,300])
for j in range(4,8):  
    os.mkdir("fig/%d" % j)
    plt.savefig('fig/%d/%d.jpg' % (j,i), dpi=my_dpi)
    plt.close()

您不需要第二个循环-而且当
i
有值
4
时,它会在第一个循环之后运行,所以您可以获得目录
4
中的所有图像

您需要
j=i+4

for i in range(4):
    geo = coord[i, :, :]
    print(coord[i])
    fig = plt.figure(num_geo,figsize=( pixels/my_dpi,  pixels/my_dpi),facecolor='k', dpi=my_dpi)  
    plt.axes([0,0,1,1])
    rectangle = plt.Rectangle((-300, -300), 600, 600, fc='k')
    plt.gca().add_patch(rectangle)
    polygon = plt.Polygon(coord[i],color='w')
    plt.gca().add_patch(polygon)
    plt.axis('off')
    plt.axis([-300,300,-300,300])
    j = i + 4
    os.mkdir("fig/%d" % j)
    plt.savefig('fig/%d/%d.jpg' % (j,i), dpi=my_dpi)
    plt.close()

对于范围(4,8)内的j,不需要
。对范围(4)中的i使用
savefig
循环
并在文件名中使用
j=i+4