如何使用%run命令通过文件路径执行其他Jupyter Notebook
跨目录运行含空格路径的Jupyter Notebook报错解决
问题场景
- 同文件夹下的
nb1.ipynb、nb2.ipynb,可通过%run ./nb2.ipynb命令在一个Notebook中调用执行另一个。 - 两文件存放在不同文件夹时,相对路径写法失效。传入带空格的绝对路径时因写法错误执行失败,错误写法如下:
%run ./'C:/myusername/My Folder/nb2.ipynb'
执行后返回报错:
Exception: File
"./'C:/myusername/My.py"not found.
报错原因
- 混用了相对路径标识
./和绝对路径:./代表当前工作目录,和盘符开头的绝对路径拼接后本身就是非法路径。 - 引号使用错误:把单引号嵌套在了路径内部,IPython解析路径时没有识别到引号的转义作用,反而把引号当成了路径的一部分,还自动给截断的路径补了
.py后缀,最终找不到目标文件。
正确写法
不需要加./相对路径前缀,直接用双引号包裹完整的绝对路径即可,经测试可正常运行:
%run "C:/myusername/My Folder/nb2.ipynb"
内容的提问来源于stack exchange,提问作者NonSleeper
相关产品推荐
相关产品推荐

