在文件夹中读取和保存多个图像:Python

Gop*_*hna 2 python image python-2.7

我是python的初学者。我正在尝试从一个文件夹中读取所有 ascii 文件,并将它们转换为 Image 后,我希望将它们全部保存到同一目录中的不同文件夹中。代码正在运行,但我没有得到任何输出,也没有显示错误。

没有循环的代码,对于单个图像运行完美。

请帮忙。

import os
import glob
import numpy as np
from PIL import Image

path = r'D:\user\ASCII'
outpath = 'D:\user\ASCII\TIFF'

filenames = glob.glob(path + "/*.asc") #read all files in the path mentioned

for x in filenames:
    myarray = np.loadtxt(x, skiprows=9)
    im = Image.fromarray(myarray)
    im.save(outpath + '/*.tif')
Run Code Online (Sandbox Code Playgroud)

Ond*_*ver 5

您在save()函数中有一个没有意义的星号,它没有任何匹配项。它不会自动替换*来自 glob 函数的匹配项。我想你想做这样的事情

src_fname, ext = os.path.splitext(x)  # split filename and extension
# construct output filename, basename to remove input directory
save_fname = os.path.join(outpath, os.path.basename(src_fname)+'.tif')
im.save(save_fname)
Run Code Online (Sandbox Code Playgroud)

请记住使用os.path模块函数而不是用斜杠连接文件名,因为它们可以在每个平台上正确处理边缘情况。