Jupyter - 从导入的笔记本导入类

时间:2017-07-05 11:06:05

标签: python class jupyter-notebook

我正在尝试从另一个笔记本导入一个类并跟随this tutorial我做错了什么我不知道。

我有

#(Building.ipynb)

class Class ():
    def __init__ ():     
        "this is my class"
        print ("I am a new class instance")

以及与教程完全相同的所有代码。

当我尝试:

sys.meta_path.append(NotebookFinder())
import Building
a = Class()
#(or)
a = Building.Class()

我明白了:

NameError                                 Traceback (most recent call last)
<ipython-input-82-ecc443c1045a> in <module>()
      1 sys.meta_path.append(NotebookFinder())
      2 import Building
----> 3 a = Class()
      4 #(or)
      5 a = Building.Class()

NameError: name 'Class' is not defined

这里有什么问题?

1 个答案:

答案 0 :(得分:2)

只需删除行a = Class(),因为调用Class构造函数的正确方法是Building.Class(),但是您的代码在运行正确的代码之前就失败了。

此外 - 您需要将def __init__():更改为def __init__(self):,因为__init__需要引用自己。