博客
关于我
python读取一个文件夹下所有图片_初学Python-找出文件夹下的所有图片
阅读量:804 次
发布时间:2023-03-06

本文共 1295 字,大约阅读时间需要 4 分钟。

重新优化后的内容

对于这个命题,通常有两种理解方式:找出指定文件夹下的图片,以及找出指定文件夹及其子文件夹下的图片。这两种理解方式主要区别在于,第二种情况需要考虑子文件夹下的图片是否需要包含在结果中。以下将分别详细说明两种方法。

1. 找出指定文件夹目录下的图片

1.1 指定文件夹路径

指定文件夹路径可以是绝对路径或相对路径。例如:

os.listdir(r'C:\Users\desktop\pictures')
os.listdir('./images/')

绝对路径需要注意反斜杠的书写方式,而相对路径则更灵活。

1.2 获取文件列表

使用os.listdir()函数可以获取指定文件夹包含的文件或文件夹名称列表。该函数返回的结果是一个包含文件和子文件夹名称的列表。

1.3 过滤图片文件

为了筛选出图片文件,可以根据文件名的后缀进行判断。例如:

import os
def find_images(folder_path):
image_suffixes = ('.jpg', '.png', '.jpeg')
for filename in os.listdir(folder_path):
if filename.lower().endswith(image_suffixes):
print(f"Found image: {filename}")

这里使用了endswith()函数来判断文件名是否以指定后缀结尾,并将符合条件的文件名打印出来。

2. 找出指定文件夹及其子文件夹下的图片

2.1 获取子文件夹路径

使用os.walk()函数可以遍历指定文件夹及其所有子文件夹。os.walk()返回一个遍历器,其中包含当前文件夹、子文件夹以及它们下的文件信息。

2.2 遍历文件夹

例如:

import os
def find_images_in_subfolders(folder_path):
image_suffixes = ('.jpg', '.png', '.jpeg')
for root, dirs, files in os.walk(folder_path):
for filename in files:
if filename.lower().endswith(image_suffixes):
print(f"Found image: {filename}")

这里的root变量表示当前遍历的文件夹路径,dirs是当前文件夹下的子文件夹名称,files是当前文件夹下的文件名称。

2.3 选择遍历方式

可以选择是否递归遍历子文件夹。例如:

os.walk(r'C:\Users\desktop\pictures', recursive=True)

递归遍历会包含所有子文件夹下的文件,而非递归只遍历当前层次的文件夹。

通过以上方法,可以根据具体需求选择适当的遍历方式来筛选出目标文件夹及其子文件夹下的图片。

转载地址:http://tyofk.baihongyu.com/

你可能感兴趣的文章
python和js哪个难_【Python】记一次学习,Python 与 js 在实现闭包时的差异
查看>>
python和java哪个更值得学——来自知乎高赞回答
查看>>
python命名空间更改_Python模块xml.etree.ElementTree自动修改xml命名空间键
查看>>
Python命名中尾随下划线有什么好处?
查看>>
Python启动脚本
查看>>
Python听写汇总结果
查看>>
python吊打Excel?屁!那是你不会用!
查看>>
Python合并两张图片 | 先叠透明度再合并 (附Demo)
查看>>
python各进制的表述与转换
查看>>
python各种库安装
查看>>
python可视化matplotlib_如何使用Python中最强大的可视化工具Matplotlib?
查看>>
python可维护性_使用这7大神器,让你的Python 代码更容易于维护
查看>>
python变量的详细教程_Python零基础入门教程之语法入门[变量](第二期)
查看>>
Python变量命名方法-ChatGPT4o作答
查看>>
Python变量与运算符
查看>>
python单元测试之unittest
查看>>
Python单元测试unittest实战
查看>>
python协程实时输出_Python 协程以及事件循环的问题,怎么知道 IO 读取结束了呢?...
查看>>
Python化身“安全老中医”:一键搞定工控系统漏洞,从零基础到精通,收藏这篇就够了!
查看>>
Python加速运行技巧
查看>>