Python globbing图片目录

时间:2018-07-20 02:05:26

标签: python glob pathlib

我目前正在一个项目上,到目前为止,我已经生成了一个图像文件夹(png格式),在其中需要遍历每个图像并使用PIL对它进行一些操作。

通过手动将文件路径链接到脚本中,我可以正确执行该操作。 要遍历每张图片,我尝试使用以下内容

frames = glob.glob("*.png")

但是这会产生一个字符串形式的文件名列表。

PIL要求文件路径用于加载图像并因此进一步使用

filename = input("file path:")
image = Image.open(filename)
callimage = image.load()

如何转换glob.glob列表中的字符串并将其用作Image.open方法的参数?

感谢您的反馈!

我在python 3.6.1上是否具有任何相关性。

1 个答案:

答案 0 :(得分:1)

使用os软件包的解决方案:

import os

source_path = "my_path"

image_files = [os.path.join(base_path, f) for f in files for base_path, _, files in os.walk(source_path) if f.endswith(".png")]

for filepath in image_files:
    callimage = Image.open(filepath).load()
    # ...

使用glob的解决方案:

import glob

source_path = "my_path"

image_files = [source_path + '/' + f for f in glob.glob('*.png')]

for filepath in image_files:
    callimage = Image.open(filepath).load()
    # ...