Перемещение по классам Python
Есть код:
class main:
class sub:
def function_from_sub():
# Функция main_function
def main_function():
print("Something")
Задача - вызвать функцию, относящуюся к функции main, не передавая экземпляр класса в sub функцию и не создавая новый экземпляр экземпляр класса main. Это возможно?
Ответы (1 шт):
Автор решения: GinTR1k
→ Ссылка
Необходимо в данном случае использовать @staticmethod как написал Александр в комментарии.
class Main:
class Sub:
@staticmethod
def function_from_sub():
Main.main_function()
@staticmethod
def main_function():
print("Something")
Вызвать метод:
>>> Main.Sub.function_from_sub()
Something