相对路径(pathlib)名称在MAC操作系统上运行,但在Windows上运行时出错



目前我正在处理一个一直在使用pathlib库的项目,这样我就可以在需要的时候在Windows桌面和MacBook Pro上工作。基本上能够在两个操作系统之间工作。到目前为止,我没有任何问题。设置如下:

我设置了一个管道来自动保存一个.joblib和大量的.png文件,这些文件将进入一个名为的目录

output_dir = Path('../Trained_Models/Differential_gene_analysis/A Kidney Cancer Transcriptome Molecular Signature Identifies Tumors with Tumor Thrombus/Models train on TCGA data and test on Rodriguez data/Oct-XX-20XX')

例如,如果我想以RandomForest_TumorThrombus_104.joblib的名称保存一个.joblib文件,我会使用命令

joblib.dump(model ,output_dir / 'RandomForest_TumorThrombus_104.joblib')

在我的MacBook Pro上,运行时没有问题,但在Windows上,它会给我以下错误

FileNotFoundError: [Errno 2] No such file or directory: '..\Trained_Models\Differential_gene_analysis\A Kidney Cancer Transcriptome Molecular Signature Identifies Tumors with Tumor Thrombus\Models train on TCGA data and test on Rodriguez data\Oct-17-2022\RandomForest_TumorThrombus_104.joblib'

我曾尝试使用.resolve()方法来获得绝对路径,但仍然会出现同样的错误。我试着进行实验,试图看看发生了什么,比如使用os.path.exists()。当使用os.path.exists()方法时,我得到以下命令的True

os.path.exists(output_dir)

因此,它确实认识到该目录的存在。我尝试的下一件事是将文件重命名为类似dddddd.joblib的文件,结果成功了。但我发现只有几个文件名才能保存这些文件。在调试过程中,我发现最近的Traceback发生在这里:

with open(filename, 'wb') as f:```

I was wondering if anyone here had any idea what was going on here and how I can fix this issue? Please and Thank you.

解决方案是在Windows上启用长路径。

相关内容

最新更新