class Test1: def __init__(self, master): # 1 self.master = master # 2 def do_something(self, x, y): # some code class Test2: def __init__(self, master): self.master = master def do_something_2(self): Test1.do_something(self, x=1, y=2) # 3 if __name__ == "__main__": Test2.do_something2()
Что не могу взять в толк и буду рад вашей поддержке:
1 и 2) Где-то увидел пример с таким использованием (добавлением master), но если верить документации, метод можно вызывать и без аргументов (не считая self), зачем такая запись тогда?
3) PyCharm подчеркивает self в данной строке выводя “expected type ‘Test’ got ‘Test2’ instead”, при этом убирая self, код разумеется не работает.
4) Можно ли таким образом использовать классы? В моем случае в Test1 будут функции для размещения GUI, а Test2 вызов собственно данного GUI и добавление логики. Далее уже будут классы Test3, Test4 для других режимов работы, но для них также потребуется класс для размещения GUI (Test1).
Спасибо.
p.s. Названия классов, функций и переменных такие для примера
