У меня есть 2 файла Python в том же каталоге. one.py и two.py, содержащие классы First и Second соответственно. Я хочу, чтобы классы импорта наследовали друг друга и использовали методы, определенные друг другом.классы python, наследующие друг от друга
one.py
from two import Second
class First(Second):
def first(self):
print "first"
two.py
from one import First
class Second(First):
def second(self):
print "second"
при компиляции я получаю следующее сообщение об ошибке. Есть ли способ преодолеть это. Также предлагайте альтернативные методы.
Traceback (most recent call last):
File "C:\Users\uvijayac\Desktop\New folder\two.py", line 1, in <module>
from one import First
File "C:\Users\uvijayac\Desktop\New folder\one.py", line 1, in <module>
from two import Second
File "C:\Users\uvijayac\Desktop\New folder\two.py", line 1, in <module>
from one import First
ImportError: cannot import name First
Наследование предназначено для иерархии сверху вниз, а не матрицы. Вы должны пересмотреть свой дизайн. – cdarke
Что делать, если класс моего ребенка должен использовать метод из родительского класса. –
Это нормально, это другое направление (родитель, использующий метод ребенка), который нарушает правила. – cdarke