我在Windows 7上运行Python 2.7.6。我在C:/Data/Images
有一个目录,其中包含许多JPEG图像。因此,我在命令提示符中导航到C:/Data
,然后输入python
运行Python shell。然后,我输入以下内容:
print len([f for f in os.listdir('Images') if os.path.isfile(f)])
这会返回0
,即使我知道C:/Data/Images
中有多张图片。
为什么会这样?
答案 0 :(得分:2)
os.listdir
返回文件名列表(没有目录路径部分)。您需要使用filename加入目录名称。
[f for f in os.listdir('Images') if os.path.isfile(os.path.join('Images', f))]