将模块导入 Jupyter

Import module into Jupyter

我是 运行 Python 3,在 Windows 10 上通过 Anaconda。我在将自己的模块导入 Jupyter 工作簿时遇到问题。例如,如果我为名为 'fibo.py' 的模块尝试 import fibo,我会收到以下错误:

---------------------------------------------------------------------------
ImportError                               Traceback (most recent call last)
<ipython-input-4-4105c89a6fa8> in <module>()
----> 1 import fibo

ImportError: No module named 'fibo'

我试过三件事: 1) 使用 sys.path.append("path\to\fibo_folder") 2) 更改 PATH 和 PYTHONPATH 环境变量以包含 "path\to\fibo_folder" 3. 将 Jupyter Notebook 导航到与安装 'fibo' 相同的目录。

请注意,我还在与 fibo 相同的目录中包含了一个空的 .py 文件,名为 'init.py'

只有 3) 似乎有效,但如果我使用存储在不同文件夹中的模块(它们需要分开保存),这是不切实际的。我确信 1) 和 2) 应该有效,但它们似乎无效。

如何将自己的模块导入 Jupyter?

sys.path.append("/path/to/fibo file") 应该已经解决了这个问题。 (请注意,在你的问题中,你在给出路径时使用了“\”,这是一个转义字符,是错误的,应该是“/”。不确定它是否是问题中的错字,但只是为了为了完成。)

但是就像您在 sys.path.append() 无效的问题中提到的那样,这是您可能出错的一个常见地方。

在需要导入 fibo 的相应代码(.py 或 .ipynb)中,每次 运行 sys.path.append(“/path/to/fibo 文件”)运行 相应的 .py 或 .ipynb.

的意思,不是像你打开终端,运行 python命令,在终端输入sys.path.append("/path/to/fibo file"),关闭它然后 运行 你的 .py 或 .ipynb 文件。这将不起作用,并且会在您的问题中引发上述错误。

sys.path.append() 是一个会话变量,每次您 运行 您在该特定 .py 或 .ipynb 文件中的相应代码时都应该是 运行。

这应该得到

1) and 2)

工作中!

(此外,(我知道,微不足道)重新检查 "fibo" 文件的路径是否正确)