我对Jupyter Notebook很陌生。我玩了一段时间。但这是我第一次尝试将另一个笔记本导入我的主类。

作为引用,我正在使用Anaconda 4.3.1和Python v2.7。

我正在尝试将我在python项目中所做的工作复制到jupyter笔记本中。它需要将其他.ipynb文件(从原始.py文件转换)导入到其中,以根据需要使用相关方法。

为此,我遵循了Jupyter Nbviewer Steps Link上给出的指示,该指示是通过对以下堆栈Question的初步搜索找到的。它给了我一些主意,但是在一个阶段之后并没有帮助我。

我将引导您完成我执行的步骤和尝试过的示例程序。

  • 创建了一个小的.ipynb文件abc.ipynb,如下所示
    def prt_n(str):
        print(str)
    if __name__ == '__main__':
        prt_n("in abc")
    
  • 创建一个.ipynb文件,以从上面给出的Jupyter链接导入Jupyter Notebook。说,importer.ipynb。
  • 运行importer.ipynb
  • import abc
  • str="Hello Me"
  • 测试步骤abc.__name__abc作为输出。
  • abc.prt_n(str)引发以下错误

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

    ----> 1 abc.prt_n(str)
    AttributeError:“模块”对象没有属性“prt_n” *

    我希望答案是Hello Me

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

    一个这样的示例可以是一个文件efg.ipynb,如下所示:
    import abca="Hello Notebook"abc.prt_n(a)
    我还想确保是否还有其他方法可以做到这一点?

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

    欢迎任何帮助!

    最佳答案

    在jupyter笔记本中使用ipynb文件的简单方法如下:

    1)安装import-ipynb

    pip install import-ipynb
    

    2)在jupyter笔记本中导入import_ipynb。然后在导入.py文件时导入ipynb文件
    import import_ipynb
    from test import print_name
    
    print_name("your name")
    

    关于python - Jupyter Notebook : Import . ipynb文件,并在其他.ipynb文件中访问它的方法,并给出错误,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/44336087/

    10-11 22:56