Вопросы с тегом 'abc'

Абстрактные базовые классы - это неинтуитивные классы, используемые для определения ожидаемого поведения подклассов.
4
ответов

Зачем использовать абстрактные базовые классы в Python?

Будучи привыкшим к старым способам утиной печати на Python, я не понял необходимости использования ABC (абстрактные базовые классы). help хороша в том, как их использовать. Я попытался прочитать обоснование в PEP, но это пошло мне на голову. Если бы...
задан 26 авг. '10 в 1:43
4
ответов

Используя abc.ABCMeta таким образом, он совместим как с Python 2.7, так и с Python 3.5

Я хотел бы создать класс, который имеет abc.ABCMeta как метакласс и совместим как с Python 2.7, так и с Python 3.5. До сих пор мне удалось это сделать либо на 2.7, либо на 3.5 - но никогда в обеих версиях одновременно. Может ли кто-нибудь дать мне р...
задан 27 февр. '16 в 21:10
5
ответов

Python - Тестирование абстрактного базового класса

Я ищу способы/рекомендации по методам тестирования, определенным в абстрактном базовом классе. Единственное, о чем я могу думать непосредственно, - это выполнить тест во всех конкретных подклассах базового класса, но это иногда кажется чрезмерным. Р...
задан 18 марта '12 в 12:37
3
ответов

Определите, является ли класс Python абстрактным базовым классом или бетоном

Приложение My Python содержит множество абстрактных классов и реализаций. Например: import abc import datetime class MessageDisplay(object): __metaclass__ = abc.ABCMeta @abc.abstractproperty def display(self, message): pass cl...
задан 19 янв. '13 в 6:38
6
ответов

Как проверить, является ли numpy dtype интегральным?

Как проверить, является ли numpy dtype интегральным? Я пробовал: issubclass(np.int64, numbers.Integral) но он дает False. Обновление: теперь он дает True.
задан 18 марта '14 в 9:12
3
ответов

Исключая абстрактные свойства отчетов об охвате

У меня есть абстрактный базовый класс по строкам: class MyAbstractClass(object): __metaclass__ = ABCMeta @abstractproperty def myproperty(self): pass Но когда я запускаю nosetests (покрытие) в моем проекте, он жалуется, что строка def...
задан 09 февр. '12 в 1:48
1
ответ

python @abstractmethod decorator

Я прочитал документы python об абстрактных базовых классах: От здесь: abc.abstractmethod(function)Декоратор, показывающий абстрактные методы. Использование этого декоратора требует, чтобы метакласс класса был ABCMeta или вытекает из него. Класс,...
задан 25 авг. '11 в 22:53
2
ответов

Почему bytearray не является Sequence в Python 2?

Я вижу странное несоответствие в поведении между Python 2 и 3. В Python 3 вещи работают нормально: Python 3.5.0rc2 (v3.5.0rc2:cc15d736d860, Aug 25 2015, 04:45:41) [MSC v.1900 32 b it (Intel)] on win32 >>> from collections import Sequence &...
задан 27 авг. '15 в 22:51
1
ответ

Могут ли абстрактные базовые классы python наследовать от C-расширений?

Кажется, что когда у меня есть абстрактный базовый класс, который наследуется от gevent.Greenlet(который наследуется от окуляра модуля расширения C: https://github.com/python-greenlet/greenlet), то классы, которые его реализуют, не поднимают никаких ...
задан 06 дек. '13 в 22:47
1
ответ

Наследование наследования Python, метаклассы и функция type()

Я не понимаю, почему следующий код ведет себя определенным образом, который описан ниже: from abc import ABCMeta class PackageClass(object): __metaclass__ = ABCMeta class MyClass1(PackageClass): pass MyClass2 = type('MyClass2',...
задан 07 янв. '13 в 18:33
1
ответ

Почему "__subclasshook__" будет обезврежен в метаклассе, но "__instancecheck__" не может?

Вот пример игрушки, который пытается создать декоратор, который позволяет объявлять имена атрибутов, которые должны быть обязательными для частей "проверки интерфейса" по стандартным шаблонам __subclasshook__ и __instancecheck__. Кажется, что он ра...
задан 11 дек. '13 в 23:04
1
ответ

Как я могу объединить abc.abstractproperty с classmethod, чтобы создать "свойство абстрактного класса"?

Я хотел бы создать "свойство класса", объявленное в абстрактном базовом классе, а затем переопределенное в конкретном классе реализации, сохраняя при этом прекрасное утверждение о том, что реализация должна переопределить свойство класса абстрактного...
задан 16 янв. '15 в 17:47
1
ответ

Модель django, которая подклассифицирует abc, дает конфликт метакласса

У меня есть следующий модельный и абстрактный базовый класс import abc from django.db import models class AbstractBase(): __metaclass__ = abc.ABCMeta @abc.abstractmethod def my_method(self): return class MyModel(models.Model...
задан 04 янв. '12 в 10:52
4
ответов

Python: подкласс `type` для создания специализированных типов (например, "список int" )

Я пытаюсь создать подкласс type, чтобы создать класс, позволяющий создавать специализированные типы. например a ListType: >>> ListOfInt = ListType(list, value_type=int) >>> issubclass(ListOfInt, list) True >>> issubclass(...
задан 13 июня '11 в 18:15
1
ответ

Почему Callable ABC в сборнике ABC-модуля?

Модуль Python collections.abc содержит много удобных ABC для проверки различных объектов объектов, но тот, который, по-видимому, не принадлежит, t21 > . Нет стандартной коллекции, и PEP 3119 не содержит никаких аргументов или даже упоминает Callab...
задан 21 апр. '15 в 2:25