【问题标题】:Import module into Jupyter将模块导入 Jupyter
【发布时间】:2016-04-02 04:56:57
【问题描述】:

我在 Windows 10 上通过 Anaconda 运行 Python 3。我无法将自己的模块导入 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 相同的目录中包含了一个名为 'init.py' 的空 .py 文件

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

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

【问题讨论】:

标签: python module jupyter-notebook


【解决方案1】:

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

但就像您在问题中提到的 sys.path.append() 不起作用,这里是您可能出错的一个常见地方。

在需要导入 fibo 的相应代码(.py 或 .ipynb)中,每次运行相应的 .py 或.ipynb.

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

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

这应该得到

1) 和 2)

工作!

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-11-22
    • 2023-03-30
    • 1970-01-01
    • 1970-01-01
    • 2020-02-21
    • 1970-01-01
    • 2020-05-18
    • 1970-01-01
    相关资源
    最近更新 更多