Домой

Последняя активность

  

Проверка принадлежности к классу в Python

PyDeKolt avatar PyDeKolt (0) [#] (27.05.2013 / 16:46)
При создании экземпляра класса типом этого экземпляра становится сам класс.
  1. class Red(object): pass
  2. class DarkRed(Red): pass
  3. dr = DarkRed()
  4. # проверить принадлежность экземпляра к классу
  5. print isinstance(dr, DarkRed) # True
  6. print isinstance(dr, Red) # True

Также можно проверить является ли класс A базовым классом классу B.
  1. class Red(object): pass
  2. class DarkRed(Red): pass
  3. print issubclass(DarkRed, Red)
  4. # True (Red является базовым классом классу DarkRed)
  5. print issubclass(Red, DarkRed)
  6. # False (DarkRed неявляется базовым классом классу Red)

Добавлю что методы определения принадлежности можно переопределить.
  1. __instancecheck__(self, cls)
  2. __subclasscheck__(self, subcls)

- Python классы
* Python для новичков
  Всего: 1

Зарегистрируйтесь и сможете комментировать все темы. Кнопочка вверху
Фильтр по автору
Скачать тему

В Форум

Новые вверху
Statok.net Рейтинг@Mail.ru
spywap.nettop-sid.ru
Яндекс.Метрика