TypeError: Не удается создать экземпляр абстрактного класса PTExtension с помощью абстрактных методов enrich_query, выполнить - PullRequest
0 голосов
/ 24 марта 2020

У меня есть абстрактный класс в python из ab c import ABCMeta, abstractmethod

class ExtensionBase(object):
    __metaclass__ = ABCMeta

    @abstractmethod
    def enrich_query(self, query, item_id):
        .....
        ......
        .....
        return response

    @abstractmethod
    def execute(self):
        pass

У меня есть класс, который реализует этот класс, обратите внимание, я добавляю дополнительный параметр в execute метод.

class PTExtension(ExtensionBase):
    @abstractmethod
        def enrich_query(self, query, item_id):
            .....
            ......
            .....
            return response

    @abstractmethod
    def execute(self, df):
        .....
        .....
        return xyz

Теперь в другом файле я вызываю внедренный класс

ab = PTExtension()

Я получаю сообщение об ошибке

TypeError: Can't instantiate abstract class PTExtension with abstract methods enrich_query, execute
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...