Принципы чистого кода в ООП Python

class b:
    def temp(self):
        print('a')


class a(b):
    def main(self):
        #-----
        # Правильна ли запись self.temp()
        #----- 
        self.temp()
        print('b')

При вызове функции в классе обязательно должна выполняться вместе с этим другая функция класса. По принципу чистого когда, как правильно это сделать?


Ответы (2 шт):

Автор решения: S. Nick

да, можно и так:

class B:
    def temp(self):
        print('\na')


class A(B):
    def main(self):
        #-----
        # Правильна ли запись self.temp()
        #----- 
        self.temp()
        print('b')
        
a = A()
a.main() 
a.temp()     

update

можете показать еще варианты

я бы написал так:

class B:
    def temp(self):
        print('\na')


class A(B):
    def __init__(self):
        super(A, self).__init__()
        self.main()
        
    def main(self):
        self.temp()
        print('b')
        
a = A()
→ Ссылка
Автор решения: zhandos256
class B:
    def temp(self):
        print('\na')


class A(B):
    def __init__(self):
        super(A, self).__init__()
        self.main()
        
    def main(self):
        self.temp()
        print('b')
        
a = A()

super(A, self).init() используется в python2

class b:
    def temp(self):
        print('a')


class a(b):
    def main(self):
        super().temp()
        print('b')

Проще будет такая запись

→ Ссылка