gpt4 book ai didi

python - glob.glob ("**/*.jpg") 作为迭代器还是延迟加载?

转载 作者:行者123 更新时间:2023-12-05 09:04:01 29 4
gpt4 key购买 nike

我想知道是否可以使用 glob.glob("**/*.jpg") 来获取多个文件夹中的所有图像,但作为迭代器以避免填充内存

目前,我将以下代码与 glob 一起使用:

for file in glob.glob("**/*.jpg")[:1]:
print(file)

但我用

for model_folder in os.scandir(folder):
for model_folder_content in os.scandir(model_folder):
print(model_folder_content)

第一种方法的问题是,如果有很多文件可以填满内存而失败,所以想法是使用 scandir,因为返回一个迭代器,但可以选择使用模式。

这可能吗?

谢谢

最佳答案

您可以使用 glob.iglob() :

glob.iglob(pathname, *, recursive=False)

Return an iterator which yields the same values as glob() without actually
storing them all simultaneously.

关于python - glob.glob ("**/*.jpg") 作为迭代器还是延迟加载?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69150956/

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