Is it possible to ignore one single specific line with pylint?

前端 未结 4 845
生来不讨喜
生来不讨喜 2020-11-29 00:39

I have the following line in my header:

import config.logging_settings

This actually changes my python logging settings, but pylint thinks

相关标签:
4条回答
  • 2020-11-29 01:23

    Pylint message control is documented in the Pylint manual:

    Is it possible to locally disable a particular message?

    Yes, this feature has been added in Pylint 0.11. This may be done by adding
    # pylint: disable=some-message,another-one
    at the desired block level or at the end of the desired line of code

    You can use the message code or the symbolic names.

    For example

    def test():
        # Disable all the no-member violations in this function
        # pylint: disable=no-member
        ...
    
    global VAR # pylint: disable=global-statement
    

    The manual also has further examples.

    There is a wiki that documents all pylint messages and their codes.

    0 讨论(0)
  • 2020-11-29 01:26

    Checkout the files in https://github.com/PyCQA/pylint/tree/master/pylint/checkers. I haven't found a better way to obtain the error name from a message than either Ctrl+F-ing those files or using the Github search feature:

    If the message is "No name ... in module ...", use the search:

    No name %r in module %r repo:PyCQA/pylint/tree/master path:/pylint/checkers
    

    Or, to get less results:

    "No name %r in module %r" repo:PyCQA/pylint/tree/master path:/pylint/checkers
    

    Github will show you:

    "E0611": (
        "No name %r in module %r",
        "no-name-in-module",
        "Used when a name cannot be found in a module.",
    

    You can then do:

    from collections import Sequence # pylint: disable=no-name-in-module
    
    0 讨论(0)
  • 2020-11-29 01:29
    import config.logging_settings # pylint: disable=W0611
    

    That was simple and is specific for that line.

    As sthenault kindly pointed out, you can and should use the more readable form:

    import config.logging_settings # pylint: disable=unused-import
    
    0 讨论(0)
  • 2020-11-29 01:38

    I believe what you're looking for is...

    import config.logging_settings  # @UnusedImport
    

    Note the double space before the comment to avoid hitting other formatting warnings.

    Also, depending on your IDE (if you're using one), there's probably an option to add the correct ignore rule (eg in eclipse pressing Ctrl1 while the cursor is over the warning will auto-suggest @UnusedImport

    0 讨论(0)
提交回复
热议问题