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

Python遍历目录读取.dat文件列名触发FileNotFoundError求助

解决.dat文件读取时的FileNotFoundError问题

问题核心原因

你遇到的错误根本不是路径格式、.dat文件格式或竖线分隔符的问题,而是没有拼接完整文件路径:

  • os.walk(dir_path)返回的file只是当前文件夹下的文件名,不是完整路径
  • 直接用pandas.read_csv(file)时,Python会在当前工作目录(而非你指定的dir_path)查找这个文件,自然找不到

修正后的代码

import os
import pandas as pd

dir_path = "C:/Projects/acs5-2022/Datasource/TestSample"

column_list = []

for path, subs, file_names in os.walk(dir_path):
    for file in file_names:
        # 拼接完整文件路径
        full_file_path = os.path.join(path, file)
        datafile = pd.read_csv(full_file_path, delimiter='|')
        # 修正列名添加的顺序(原代码写反了)
        for col in datafile.columns:
            column_list.append(col)

# 可选:去重列名(如果需要)
column_list = list(set(column_list))
print(column_list)

额外说明

  1. 你的路径格式(C:/...、r"C:\..."、C:\\...)都是正确的,无需调整
  2. 竖线分隔符delimiter='|'没问题,匹配你的文件表头格式
  3. 原代码中col.append(column_list)是错误的,应该是column_list.append(col),否则会触发"AttributeError: 'str' object has no attribute 'append'"错误

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.02 13:13:19