使用pandas read_csv读取CSV文件时持续出现OSError求助
解决pandas read_csv的OSError问题
看起来你这个OSError的核心问题是路径转义字符冲突导致的——毕竟在Windows系统下用反斜杠\写路径,但Python里\是转义字符,会把\D这类组合解析成特殊字符,导致实际路径和你预期的不一样,最终触发错误。
先看你代码里的路径:
melbourne_file_path = '..\Downloads\melb_data.csv'
这里的\D会被Python自动转义,生成的路径并不是你想的「上一级目录下的Downloads文件夹」,这就是问题根源。
给你几个靠谱的解决方案:
用原始字符串处理路径:在路径字符串前加
r,告诉Python不要把反斜杠当成转义字符,代码改成:melbourne_file_path = r'..\Downloads\melb_data.csv'替换反斜杠为正斜杠:Python对路径的正斜杠
/兼容性极强,不管Windows还是Linux都能识别,直接改成:melbourne_file_path = '../Downloads/melb_data.csv'用os.path模块拼接跨平台路径(最推荐):借助Python内置的
os.path模块构建路径,完全避免手动写路径的坑,结合你已经获取的当前目录:import pandas as pd import os curDir = os.getcwd() # 先获取当前目录的上一级目录 parent_dir = os.path.abspath(os.path.join(curDir, '..')) # 拼接出目标文件的完整路径 melbourne_file_path = os.path.join(parent_dir, 'Downloads', 'melb_data.csv') # 先打印验证路径是否正确 print(melbourne_file_path) melbourne_data = pd.read_csv(melbourne_file_path)
建议你先打印路径看看是不是和实际文件的位置一致,确认没问题再调用read_csv,这样能快速排查路径是否正确。
内容的提问来源于stack exchange,提问作者H D
相关产品推荐
相关产品推荐

