2016-08-20 1 views
0

я хочу вызвать метод из ClassB, в способе в CLASSA и передавать аргументы:Python: метод класса из метода в А «Класса различных» в

class A: 
    B.processAds(ad, cnx, renewableAds, adsToRenew, webdriver) 


class B: 
    def processAds(self, ad, cnx, renewableAds, adsToRenew, webdriver): 

Как мне это сделать?

+0

вы должны сначала инициализировать экземпляр класса B ('foo = B()') и использовать его в классе A ('foo.some_method_from_A (args)'). – cuongnv23

+1

Как «класс B» знает, какой экземпляр класса «A» должен использоваться? Это передается при инициализации экземпляра или в самом вызове метода? Пример исполняемого скрипта без так много параметров будет только дюжины строк. Как насчет этого немного? – tdelaney

ответ

0

Сделать метод в классе B A classmethod:

class B: 
    @classmethod 
    def processAds(cls, ad, cnx, renewableAds, adsToRenew, webdriver): 

тогда вы будете иметь возможность использовать его без инстанцировании класса B, например:

return_value = B.processAds(ad, cnx, renewableAds, adsToRenew, webdriver) 

Вы можете прочитать больше о classmethod в это answer.

+1

Я не думаю, что в вопросе достаточно информации, чтобы сделать вывод о том, что метод класса будет работать. OP ясно показывает, что 'processAds' - это метод экземпляра. – tdelaney

Смежные вопросы