Sobes.tech
Back to questions
Junior — Middle
48

Какие встроенные методы в Python применяешь чаще всего для удобства работы с объектами?

Companies where asked
АО К-Технологии

Answer from AI

sobes.tech AI

Чаще всего в Python для удобной работы с объектами использую следующие встроенные методы:

  • __init__ — конструктор для инициализации объекта.
  • __repr__ — для удобного представления объекта при выводе, помогает при отладке.
  • __str__ — для пользовательского строкового представления объекта.
  • __eq__ — для определения логики сравнения объектов.
  • __hash__ — если объект должен быть хешируемым (например, для использования в множествах или словарях).
  • __len__ — чтобы объект поддерживал функцию len().
  • __getitem__, __setitem__ — для поддержки индексирования и доступа к элементам.

Пример:

class Product:
    def __init__(self, name, price):
        self.name = name
        self.price = price

    def __repr__(self):
        return f"Product(name={self.name!r}, price={self.price})"

    def __eq__(self, other):
        return isinstance(other, Product) and self.name == other.name and self.price == other.price

p = Product("Book", 100)
print(p)  # Product(name='Book', price=100)

Использование этих методов делает объекты более удобными и интегрируемыми с Python-экосистемой.