问题
I'm reading bottle.py source code. It's a web framework, with only 3000+ lines python code. So cool.
I found some code like this:
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
...
What does the # pragma: no cover
mean? I can't find any introduce about the pragma
syntax in the python documentations.
回答1:
It is apparenly related to the coverage.py:
Coverage.py is a tool for measuring code coverage of Python programs. It monitors your program, noting which parts of the code have been executed, then analyzes the source to identify code that could have been executed but was not.
That exact # pragma: no cover
is the hint that the part of code should be ignored by the tool -- see Excluding code from coverage .
回答2:
For Python, it's simply a comment. It might be an annotation targeted at some external tool, which reads and analyzes Python code, similar, for example, to doctest's #doctest: +ELLIPSIS
annotations or PyLint's # pylint: disable=W0613
style annotations.
来源:https://stackoverflow.com/questions/11992448/pragmas-in-python