import glob
from pathlib import Path
import os
def getAllFile(p, img_formats):
"""
:param p: dir path
:param img_formats: file formats
:return: files path list
"""
p = Path(p)
files = []
if p.is_dir(): # dir
files += glob.glob(str(p / '**' / '*.*'), recursive=True) # 模式**匹配任何文件、文件夹
elif p.is_file(): # file
print(f'{p} is file, not dir!')
else:
raise Exception(f'{p} does not exist')
img_files = sorted([x.replace('/', os.sep) for x in files if x.split('.')[-1].lower() in img_formats])
return img_files
if __name__ == "__main__":
dir_path = r"E:\data"
img_formats = ['bmp', 'jpg', 'jpeg', 'png', 'tif', 'tiff', 'dng', 'webp'] # acceptable image suffixes
img_files = getAllFile(dir_path, img_formats)
print(len(img_files)) # dir_path 目录下 图片总数量
python glob模块获取文件夹下的图片总数量
最新推荐文章于 2023-06-27 22:57:37 发布