Jupyter笔记本:导入.ipynb文件并在其他.ipynb文件中访问它的方法

2024-04-28 12:05:04 发布

您现在位置:Python中文网/ 问答频道 /正文

我对Jupyter笔记本还不太熟悉。我已经玩了一段时间了。但这是我第一次尝试将另一个笔记本电脑导入我的主课。

作为参考,我使用的是Anaconda 4.3.1和Python v2.7。

我试图将我在python项目中所做的复制到jupyter笔记本上。它需要将其他.ipynb文件(从原始的.py文件翻译过来)导入到其中,以便根据需要使用相关方法。

为此,我遵循了Jupyter NbviewerSteps Link上给出的指示,我在下面的堆栈Question上进行了初步搜索。它给了我一些想法,但一个阶段后没有帮助我。

我将带您了解我所采取的步骤和我尝试的示例程序。

  1. 创建了一个小的.ipynb文件abc.ipynb,如下所示

    def prt_n(str):
        print(str)
    if __name__ == '__main__':
        prt_n("in abc")
    
  2. 创建了一个.ipynb文件以从上面给出的Jupyter链接导入Jupyter笔记本。喂,进口商。

  3. 运行importer.ipynb

  4. import abc

  5. str="Hello Me"

  6. 测试步骤abc.__name__产生abc作为输出。

  7. abc.prt_n(str)引发以下错误

*————————————————————————————————————————————————————

AttributeError                            Traceback (most recent call last)
<ipython-input-9-2fb88a43c9e5> in <module>()

——————————————————————————————————————————————————————————————————— AttributeError:“module”对象没有属性“prt_n”*

我希望答案是Hello Me

稍后,我想实际创建一个myMain.ipynb文件,其中我想包括2-3个这样的笔记本,并用所需的参数调用它们的方法。

一个这样的例子可以是文件efg.ipynb,如下所示:

import abc a="Hello Notebook" abc.prt_n(a)

我还想确定是否有其他方法可以做到这一点?

注意:我已经检查过sys.executable和sys.path。两者具有相同的python路径值。

欢迎任何帮助!


Tags: 文件方法nameinimporthello笔记本jupyter