Pragmas in python

跟風遠走 提交于 2020-01-22 10:35:07

问题


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

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!