OS.Path 来自 Jypyter 笔记本,而不是来自独立脚本

OS.Path works from Jypyter note book, not from standalone script

我有一个 Jyputer 笔记本,代码如下

import os
execution_path = os.path.join(os.getcwd()+'\', "BillingInfo.xlsx")
print(os.getcwd())
print(execution_path)

这段代码的输出是

C:\Users\mys2kor
C:\Users\mys2kor\BillingInfo.xlsx

我将这个完全相同的文件复制到我的桌面上作为python脚本(文件名OSpath.py)&运行它来自Anaconda 提示 & 输出是

C:\
C:\BillingInfo.xlsx

为什么会这样?我究竟做错了什么?即使我独立 运行 脚本,我也想要与 Jupyter notebook 相同的输出。

os.getcwd() return 运行ning 进程的当前目录。 当你使用 jupyter 时,当前 运行ning 进程就是你的 notebook 所在的位置。 当你 运行 一个 python 脚本时,当前 运行ning 进程的位置是你执行你的 python 命令的目录,你的 anaconda 提示位于你的C:\.

如果您需要文件绝对路径,我建议您在笔记本外使用 __file__ 值。