我正在尝试开发一个Jupyter笔记本,其中包含有%load magic命令的单元格,可以从其他地方加载代码。此代码与笔记本所在的目录不同。我想让它在Windows、Linux和Mac上运行,所以路径分隔符有时应该是'\',有时是'/'。在
通常我会用os.path.join操作系统. 然而,当我在一行中使用load命令执行此操作时,笔记本只计算路径,而不实际加载代码。除了先更改工作目录并在执行加载的代码后再将其更改回来,有没有其他方法可以做到这一点?在
简单示例:
import os
%load os.path.join('example', 'file.py')
这将给出一个错误,因为它将实际搜索具有该名称的文件os.path.join操作系统(“示例”文件.py'). 如果我首先对其进行评估并将结果放入load中,我得到:
^{pr2}$结果是
# %load to_include
example/file.py
但很明显,我希望加载该文件的内容,而不是路径+文件名。我做错什么了?在
在Jupyter中,必须用类似bash的语法来扩展变量,以便它们在魔术函数中工作。在
这就是为什么你必须使用$符号。 在您的情况下:
相关问题 更多 >
编程相关推荐