【发布时间】:2018-05-07 14:22:40
【问题描述】:
设置
我在我的计算机上运行一个脚本,该脚本位于Users/path/to/my/script.py 目录中。
在脚本中,我使用脚本的路径,例如,
sub_path = 'Users/path/to/my/'
os.chdir(sub_path + 'other_script/')
如您所见,我在代码中“手动”定义了sub_path。
问题
我不想手动定义sub_path,我宁愿让 Python 为我做这件事。
我正在寻找类似于我用来获取当前工作目录的代码:os.getcwd(),然后是获取当前文件目录的代码。
我主要找到类似于this one的答案,上面写着,
os.path.abspath(os.path.dirname(__file__))
但在 Spyder 和 Anaconda 设置中,这会生成一个 NameError: name '__file__' is not defined。
我能做什么?
【问题讨论】:
-
这可能是因为您在 ipython 命令行中运行部分代码。所以命令行没有
__file__属性。使用播放按钮运行整个脚本,应该没问题。