在Spyder 3.2.4中导入自定义模块时出错

时间:2017-11-06 16:56:53

标签: python python-3.x

我正在使用Spyder 3.2.4 我创建了模块(或文件夹)A并创建了文件名b.py.在b.py中,我创建了class B():

现在我在test.py

中导入上面定义的类

test.py

来自A导入B. B = B()

我收到错误 ImportError: cannot import name 'B'

如何解决此问题。

1 个答案:

答案 0 :(得分:0)

档案a.py

from b import B
class A:
    def call():
        B.hello()
A.call()

档案b.py

class B:
    def hello():
        print("Hello")

运行a.py并输出Hello,从python中的其他* .py文件导入类,您需要将其文件名用作导入源,例如: b.py b

如果你有文件夹和* .py文件,并且你想要导入它们,你应该使用文件夹作为模块集,文件名作为模块。

例如:

./A/b.py
./test.py

在test.py中:

from A import b
b.B.hello()

from A import b导入整个b.py文件,只导入您需要在 中指定的B类:

from A.b import B

在没有B

的情况下可以访问该课程b.B