PYPROGLIB Telegram 6571
📌 Методы экземпляра, класса и статические методы в Python

Хотите писать чистый и поддерживаемый код? Давайте разберем, чем отличаются эти три типа методов в Python.

🔹 Методы экземпляра (`self`):
✓ Работают с конкретным объектом
✓ Изменяют атрибуты экземпляра
✓ Доступ к атрибутам класса через self.__class__
class MyClass:
def method(self):
return "Метод экземпляра", self


🔹 Методы класса (`cls`, `@classmethod`):
✓ Работают с классом в целом
✓ Могут изменять атрибуты класса
✓ Не изменяют атрибуты экземпляра
class MyClass:
@classmethod
def class_method(cls):
return "Метод класса", cls


🔹 Статические методы (`@staticmethod`):
✓ Не принимают self или cls
✓ Не изменяют состояние ни экземпляра, ни класса
✓ Используются для вспомогательных функций
class MyClass:
@staticmethod
def static_method():
return "Статический метод"


🔹 Применение в реальном коде:
class Pizza:
def __init__(self, ingredients):
self.ingredients = ingredients

@classmethod
def margherita(cls):
return cls(["моцарелла", "помидоры"])

@staticmethod
def circle_area(r):
import math
return r ** 2 * math.pi

pizza = Pizza.margherita() # Классовый метод
print(Pizza.circle_area(4)) # Статический метод


🔹 Вывод:
✓ Методы экземпляра изменяют данные конкретного объекта
✓ Методы класса работают с классом и создают альтернативные конструкторы
✓ Статические методы полезны для утилитарных функций

Библиотека питониста #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
👍102😁1👾1



tgoop.com/pyproglib/6571
Create:
Last Update:

📌 Методы экземпляра, класса и статические методы в Python

Хотите писать чистый и поддерживаемый код? Давайте разберем, чем отличаются эти три типа методов в Python.

🔹 Методы экземпляра (`self`):
✓ Работают с конкретным объектом
✓ Изменяют атрибуты экземпляра
✓ Доступ к атрибутам класса через self.__class__

class MyClass:
def method(self):
return "Метод экземпляра", self


🔹 Методы класса (`cls`, `@classmethod`):
✓ Работают с классом в целом
✓ Могут изменять атрибуты класса
✓ Не изменяют атрибуты экземпляра
class MyClass:
@classmethod
def class_method(cls):
return "Метод класса", cls


🔹 Статические методы (`@staticmethod`):
✓ Не принимают self или cls
✓ Не изменяют состояние ни экземпляра, ни класса
✓ Используются для вспомогательных функций
class MyClass:
@staticmethod
def static_method():
return "Статический метод"


🔹 Применение в реальном коде:
class Pizza:
def __init__(self, ingredients):
self.ingredients = ingredients

@classmethod
def margherita(cls):
return cls(["моцарелла", "помидоры"])

@staticmethod
def circle_area(r):
import math
return r ** 2 * math.pi

pizza = Pizza.margherita() # Классовый метод
print(Pizza.circle_area(4)) # Статический метод


🔹 Вывод:
✓ Методы экземпляра изменяют данные конкретного объекта
✓ Методы класса работают с классом и создают альтернативные конструкторы
✓ Статические методы полезны для утилитарных функций

Библиотека питониста #буст

BY Библиотека питониста | Python, Django, Flask




Share with your friend now:
tgoop.com/pyproglib/6571

View MORE
Open in Telegram


Telegram News

Date: |

Telegram has announced a number of measures aiming to tackle the spread of disinformation through its platform in Brazil. These features are part of an agreement between the platform and the country's authorities ahead of the elections in October. Matt Hussey, editorial director at NEAR Protocol also responded to this news with “#meIRL”. Just as you search “Bear Market Screaming” in Telegram, you will see a Pepe frog yelling as the group’s featured image. How to create a business channel on Telegram? (Tutorial) Write your hashtags in the language of your target audience. Add the logo from your device. Adjust the visible area of your image. Congratulations! Now your Telegram channel has a face Click “Save”.!
from us


Telegram Библиотека питониста | Python, Django, Flask
FROM American