python - Jupyter 导入 Python 函数
问题描述
我有以下文件夹结构
main/
jupyter/
nb.ipynb
helper/
text.txt
foo/
foo.py
文件 foo.py 包含
def foo():
open("../text.txt", "r")
在我的jupyter笔记本中
import sys
sys.path.append("../helper/foo")
from foo import foo
foo()
这给出了一个找不到文件的错误。解决这个问题的最干净的方法是什么?(如果可能的话,我想保持foo.py
不变。)
解决方案
您收到此错误是因为路径是相对于您的工作目录的。您将需要使用os.chdir('../helper/foo')
.
foo.py
更改并os.path.join(os.path.dirname(os.path.dirname(__file__)), 'text.txt')
用作路径会更好一些。
推荐阅读
- firebase - 在构建 StreamBuilder 时引发了以下 NoSuchMethodError
(脏,状态:_StreamBuilderBaseState >): - instagram-api - 如何从 instagram messenger webhook 获取 instagram 用户名
- c++ - C++模板参数继承
- c# - 无法访问对象的子网格
- algorithm - 最佳首次搜索如何决定等距离节点?
- c# - 为什么“return ref a[0]”不会改变原始数组?
- python - 为什么函数中的内存大小不同?
- javascript - ApexCharts:折线图溢出 Y 轴
- python - 如何使用硒滚动到页面末尾?
- python - pygame中的一个单位蛇,即使它更长