os.listdir()显示文件实际上不在Python和Windows上的文件夹中

os.listdir()显示文件实际上不在Python和Windows上的文件夹中,windows,filesystems,desktop.ini,Windows,Filesystems,Desktop.ini,以下Python脚本: import os print os.listdir('D:\images') 正在输出D:\image目录中所有文件夹的名称,但也在同一文件夹中显示desktop.ini,而图像目录中没有此类文件 这也不是一个隐藏的项目,我相信 为什么它会将其显示为内容?desktop.ini是一个受保护的系统文件,Windows往往会将其隐藏起来 您可以通过在终端中转到D:\images并运行dir/a进行验证 请参见答案 你可以使用,如果你想更多的控制,它会给你目录和文件分开。您

以下Python脚本:

import os
print os.listdir('D:\images')
正在输出
D:\image
目录中所有文件夹的名称,但也在同一文件夹中显示
desktop.ini
,而图像目录中没有此类文件

这也不是一个隐藏的项目,我相信


为什么它会将其显示为内容?

desktop.ini
是一个受保护的系统文件,Windows往往会将其隐藏起来

您可以通过在终端中转到
D:\images
并运行
dir/a
进行验证

请参见答案


你可以使用,如果你想更多的控制,它会给你目录和文件分开。您还可以使用查找您获得的条目是否是目录。

我使用os.path.isdir(path)检查os.listdir()返回的项是否是目录


这样,desktop.ini就不符合目录的标准,我的程序扫描了所有文件夹。

我可以从那里删除它吗?这导致我的程序在扫描D:\images\中的所有文件夹之前停止。添加了一些编辑。删除是安全的,但Windows可能会将其重新添加。正确的做法是以可预测的方式处理它。您能告诉我如何使用os.walk()来确定该项是否为目录吗?对于每个目录,它会为您提供一个
(dirpath、dirnames、filenames)
元组,其中目录和文件是分开的。它也会走整棵树。