博客
关于我
python读取一个文件夹下所有图片_初学Python-找出文件夹下的所有图片
阅读量:798 次
发布时间: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 join split
查看>>
python json文件传输图片
查看>>
python kivy AttributeError:‘super‘对象没有属性‘__getattr__‘
查看>>
Python Kivy ListView:如何删除选定的 ListItemButton?
查看>>
Python kivy 入口点 inflateRest2 无法定位 libpng16-16.dll
查看>>
Python Kivy库:跨平台应用开发
查看>>
python lambda表达式
查看>>
Python ldap3 代码从 SID 获取用户名
查看>>
Python list += iterable 的行为是否记录在任何地方?
查看>>
python list,str的拼接与转换
查看>>
python list函数使用总结_史上最全的Python数据结构:列表和元组用法总结
查看>>
python locust 性能测试:locust参数-保证并发测试数据唯一性,循环取数据
查看>>
python locust 性能测试:locust安装和一些参数介绍
查看>>
python log
查看>>
python logging basicconfig_python之logging.basicConfig
查看>>
Python logging模块使用
查看>>
python logging模块学习
查看>>
python mac地址_python中MAC地址打包问题
查看>>
python manage.py syncdb Unknown command: 'syncdb'问题解决方法
查看>>
Python map() 函数 和 numpy mean()函数
查看>>