«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Как я могу настроить строковое представление класса в Python?

Как я могу настроить строковое представление класса в Python?

Опубликовано 11 ноября 2024 г.
Просматривать:567

How Can I Customize the String Representation of a Class in Python?

Настройка строкового представления класса

В Python классы являются объектами и поэтому имеют собственное строковое представление. По умолчанию это представление — . Разработка собственного представления классов может быть полезна для отладки, ведения журнала или других целей.

Для достижения этой настройки используется метакласс. В Python метакласс — это класс, который создает другие классы. Реализуя метод __str__ или __repr__ в метаклассе, можно настроить строковое представление класса.

Метод __str__ обеспечивает удобочитаемое строковое представление, а __repr__ обеспечивает однозначное представление для разработки и отладки. Вот пример использования __repr__:

class MC(type):
  def __repr__(self):
    return 'Wahaha!'

class C(object):
  __metaclass__ = MC

print(C)  # Prints 'Wahaha!'

В Python 3 атрибут __metaclass__ заменяется аргументом ключевого слова метакласса. Вот версия примера для Python 3:

class MC(type):
  def __repr__(self):
    return 'Wahaha!'

class C(object, metaclass=MC):
    pass

print(C)  # Prints 'Wahaha!'
Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3