适用于目录和软件包的Python导入

时间:2020-05-22 05:04:34

标签: python class import package

我有两个类(在同一目录中),一个类是从另一个类派生的。

ClasssA.py包含以下代码:

class ClassA():

    def __init__(self):
        pass

ClasssB.py包含以下代码:

from ClassA import ClassA

class ClassB(ClassA):

    def __init__(self):

        ClassA.__init__(self)

当我从Python控制台运行脚本时,此方法工作正常。 我想将它们构建到一个程序包中,但是当我尝试实例化ClassB时,出现错误:

没有名为“ ClassA”的模块

如何编写import语句和/或__init__.py,使代码在两种情况下均可工作。

谢谢您的建议。

2 个答案:

答案 0 :(得分:0)

1)创建一个名为classA的模块,其中包含两个文件 init .py(空文件)和temp.py

temp.py

class ClassA():

    def __init__(self):
        print('ClassA')

2)ClassB.py

from ClassA.temp import ClassA 

class ClassB(ClassA):

    def __init__(self):
        super.__init__()

所有这些都应该放在同一文件夹中

Something like this

答案 1 :(得分:0)

使用from filename import ClassA指示要从中导入目录中的哪个文件。

相关问题