Подтвердить что ты не робот

Прагмы в python

Я читаю исходный код bottle.py. Это веб-фреймворк, содержащий только код кода python более 3000 строк. Так здорово.

Я нашел такой код:

class ServerAdapter(object):
    quiet = False
    def __init__(self, host='127.0.0.1', port=8080, **config):
        self.options = config
        self.host = host
        self.port = int(port)

    def run(self, handler): # pragma: no cover
        pass
    ... 

Что означает # pragma: no cover? Я не могу найти представление о синтаксисе pragma в документах python.

4b9b3361

Ответ 1

Это связано с coverage.py:

Coverage.py - инструмент для измерения охвата кода программ Python. Он контролирует вашу программу, отмечая, какие части кода были выполнены, затем анализирует источник, чтобы определить код, который мог быть выполнен, но не был.

Точный # pragma: no cover - это намек на то, что часть кода должна быть проигнорирована инструментом - см. Исключить код из покрытия.

Ответ 2

Для Python это просто комментарий. Это может быть аннотация, ориентированная на какой-то внешний инструмент, который считывает и анализирует код Python, например, для аннотаций doctest #doctest: +ELLIPSIS или аннотаций стиля PyLint # pylint: disable=W0613.