Рубрики
Без рубрики

Крошечный кончик доктора питона

Небольшой совет для написания абстрактных классов в Python. Tagged с Python, советы.

При определении интерфейсов в Python с помощью азбука ABC Metaclass, иногда становится довольно раздражающим, иметь так много пустых методов, ожидая, чтобы их заполнили.

import abc
class Requester(abc.ABC):
    @abc.abstractmethod
    def get(self, endpoint:str) -> Response:
        """Sends a GET request."""
        pass

    @abc.abstractmethod
    def post(self, endpoint:str, params:dict) -> Response:
        """Makes a POST request."""
        pass

Все эти использование Пасс Всегда чувствовал себя довольно уродливым для меня, и, к счастью, есть решение!

Потому что Docstrings – это просто строковое выражение в начале функции – Вы можете просто отпустить пас!

import abc
class Requester(abc.ABC):
    @abc.abstractmethod
    def get(self, url:str, url_params:dict) -> Response:
        """Sends a GET request."""

    @abc.abstractmethod
    def post(self, url:str, url_params:dict) -> Response:
        """Makes a POST request."""

Теперь разве это не намного лучше?

Оригинал: “https://dev.to/tadaboody/tiny-python-docstring-tip-5f2k”