class MyClass:
def method(self):
return "вызван метод экземпляра"
@staticmethod
def static_method():
return "вызвана статическая функция"
# Создание экземпляра MyClass
obj = MyClass()
# Вызов метода от экземпляра
print(obj.method()) # "вызван метод экземпляра", self передаётся автоматически
# Вызов метода непосредственно от класса
# print(MyClass.method()) # Это вызовет ошибку, так как не передан аргумент 'self'
# Вызов статической функции непосредственно от класса
print(MyClass.static_method()) # "вызвана статическая функция", не требует экземпляра
# Вызов статической функции от экземпляра
print(obj.static_method()) # "вызвана статическая функция", работает так же, как и от класса