You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何统计指定文件夹内图片总数?代码问题排查与解决

问题原因

你写的len(path)计算的是路径字符串的字符个数,输出的54就是"/content/drive/MyDrive/iuxray/images/images_normalized"这个字符串的长度,和文件夹里的图片数量没有任何关系。

正确统计方法

以下是几种Python环境下的可行方案,根据你的需求选择:

方案1:使用os模块(基础方法)

如果文件夹里只有图片文件(没有子文件夹或其他非图片文件),可以直接遍历目录统计:

import os

path = "/content/drive/MyDrive/iuxray/images/images_normalized"
# 只统计图片(过滤常见图片后缀,同时排除子文件夹)
image_extensions = ('.jpg', '.jpeg', '.png', '.bmp', '.gif')
total_images = len([
    f for f in os.listdir(path) 
    if f.lower().endswith(image_extensions) and os.path.isfile(os.path.join(path, f))
])

print(f"Number of images: {total_images}")

方案2:使用glob模块(更精准匹配图片)

glob模块可以直接按文件后缀匹配,用法更简洁:

import glob

path = "/content/drive/MyDrive/iuxray/images/images_normalized"
# 匹配当前目录下所有图片文件(不包含子文件夹)
image_paths = glob.glob(f"{path}/*.jpg") + glob.glob(f"{path}/*.jpeg") + glob.glob(f"{path}/*.png")
# 如果需要递归统计子文件夹里的图片,加上recursive=True
# image_paths = glob.glob(f"{path}/**/*.jpg", recursive=True) + glob.glob(f"{path}/**/*.png", recursive=True)

total_images = len(image_paths)
print(f"Number of images: {total_images}")

注意事项

  • 如果文件夹包含子文件夹,需要明确是否要统计子文件夹内的图片,对应开启递归逻辑即可。
  • 图片后缀可能存在大小写差异(比如.JPG和.jpg),方案1里的lower()方法可以统一处理这种情况。

内容的提问来源于stack exchange,提问作者user19686684

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.16 22:35:24