Вызов @classmethod из другого @classmethod другого класса
У меня есть два файла Python как
one.py
class FirstClass:
@classmethod
def myClass(cls,first, second):
return first+second
two.py
from one import FirstClass
class SecondClass:
@classmethod
def herClass(cls, val1, val2):
FirstClass.myClass(val1,val2)
ob = SecondClass()
print(ob.herClass(2,3))
Как я могу получить доступ к методу класса одного класса из метода класса другого класса. Если это невозможно, какое может быть возможное решение? FirstClass должен остаться прежним, у меня есть гибкость, меняющая тип метода на SecondClass.
2 ответа
Решение
Это возможно, но вам не хватает возврата этой функции
def herClass(cls, val1, val2):
return FirstClass.myClass(val1,val2)
В вашей реализации нет ничего плохого, просто добавьте return
заявление в SecondClass.herClass
Исправленный код будет выглядеть так
class SecondClass:
@classmethod
def herClass(cls, val1, val2):
return FirstClass.myClass(val1,val2)