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

如何使用Python的os.listdir()排除Windows文件夹中的desktop.ini文件

问题原因说明

desktop.ini是Windows系统默认生成的配置文件,用于存储当前文件夹的视图、图标等个性化设置,属于系统隐藏文件。os.listdir() 会直接读取目录下的所有真实存在的文件条目,不受资源管理器的「隐藏文件不显示」设置影响,和目录被其他程序占用无关,之前未遇到大概率是此前该目录没有生成过desktop.ini文件。


实现方案

你可以通过两种方案过滤不需要的文件:

  • 方案1:仅排除desktop.ini文件
    直接对返回结果做名称过滤即可,因为Windows文件名不区分大小写,建议统一转小写匹配避免遗漏:

    import os
    files = [f for f in os.listdir() if f.lower() != "desktop.ini"]
    
  • 方案2:排除所有系统/隐藏文件(更通用)
    如果希望过滤掉所有隐藏文件、系统文件(不止desktop.ini),可以通过Windows文件属性判断实现:

    import os
    
    # 定义Windows文件属性常量
    FILE_ATTRIBUTE_HIDDEN = 0x2
    FILE_ATTRIBUTE_SYSTEM = 0x4
    
    filtered_list = []
    for filename in os.listdir():
        file_attr = os.stat(filename).st_file_attributes
        # 跳过隐藏文件和系统文件
        if (file_attr & FILE_ATTRIBUTE_HIDDEN) or (file_attr & FILE_ATTRIBUTE_SYSTEM):
            continue
        filtered_list.append(filename)
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.08 16:24:04