FileNotFoundError:[Errno 2] 没有这样的文件或目录。'\\' 是什么意思?[复制]

FileNotFoundError: [Errno 2] No such file or directory. What does '\\' mean? [duplicate]

提问人:Satyam Sharma 提问时间:9/28/2023 最后编辑:Teresa LinSatyam Sharma 更新时间:9/28/2023 访问量:120

问:

code

我从代码中收到以下错误:

File "/usr/local/lib/python3.8/site-packages/joblib/numpy_pickle.py", line 650, in load with open(filename, 'rb') as f: FileNotFoundError: [Errno 2] No such file or directory: 'artifacts\\model_trainer\\model.joblib'

这是我的模型“model.joblib”的位置:

C:\Users\Dell\OneDrive\Desktop\Real_projects\End_to_end_ml_project_mlops\artifacts\model_trainer\model.joblib

以及我尝试访问“model.joblib”的此文件的位置:

C:\Users\Dell\OneDrive\Desktop\Real_projects\End_to_end_ml_project_mlops\src\mlproject\pipeline\prediction.py

我尝试以这种方式传递文件的完整地址:

self.model = joblib.load(Path("C:\Users\Dell\OneDrive\Desktop\Real_projects\End_to_end_ml_project_mlops\artifacts\model_trainer\model.joblib"))

我也尝试使用正斜杠 (/) 来做到这一点。

任何帮助都是值得赞赏的!

python 路径 目录结构 joblib

评论

0赞 John Gordon 9/28/2023
假设完整路径正确,问题中的最后一个调用应该有效。joblib.load()
0赞 John Gordon 9/28/2023
是的,请使用正斜杠而不是反斜杠。
4赞 John Gordon 9/28/2023
双 \\ 就是 python 打印反斜杠的方式。这不是您错误的原因。

答:

0赞 Phil joseph 9/28/2023 #1

尝试再次使用反斜杠,如下所示:

self.model = joblib.load('C:\\Users\\Dell\\OneDrive\\Desktop\\Real_projects\\End_to_end_ml_project_mlops\\artifacts\\model_trainer\\model.joblib')

此外,由于这两个文件位于同一目录中,因此您还可以添加“相对路径”,如下所示:

from pathlib import Path

model_path = Path(__file__).parent / ".." / ".." / "artifacts" / "model_trainer" / "model.joblib"
self.model = joblib.load(model_path)

如果有帮助,请告诉我(;