作者:
Bright Xu
NOTE
:在Pycharm中通过添加特殊的
noinspection
注释可以忽略检查
例如:
具体用法如下:
注释 | 对应检查说明 |
---|---|
# noinspection PyUnusedLocal | 此检查突出显示范围中未使用的局部变量,参数或局部函数。 |
# noinspection PyUnresolvedReferences | 此检查可以检测到应该解析但不能解析的名称。由于动态调度和动态类型,这在有限但有用的情况下是可能的。顶级和类级别的项目比实例项目得到更好的支持。 |
# noinspection PyUnreachableCode | 此检查检测到通常无法到达的代码。 |
# noinspection PyUnboundLocalVariable | 此检查警告分配前引用的局部变量。 |
# noinspection PyUnnecessaryBackslash |
此检查会在隐含行连续的地方(在
)内突出显示反斜线。 |
# noinspection PyAbstractClass | 此检查检测子类中何时未定义所有抽象属性/方法 |
# noinspection PyArgumentList | 此检查报告声明的参数与实际参数之间的差异,以及不正确的参数(例如重复的命名参数)和不正确的参数顺序。装饰器也被分析。 |
# noinspection PyArgumentEqualDefault | 此检查重点介绍了传递给函数的参数等于默认参数值的情况 |
# noinspection PyAssignmentToLoopOrWithParameter |
检查用内部循环重写循环变量时的情况
它还会警告您,如果在语句主体内部重新声明了with语句中声明的变量:
|
# noinspection PyAsyncCall | 此检查着重指出了未经等待被调用的协程 |
# noinspection PyAugmentAssignment | 此检查突出显示可以用增强型任务代替的任务。 |
# noinspection PyAttributeOutsideInit |
此检查在 init 方法之外检测实例属性定义 |
# noinspection PyBroadException |
此检查突出显示了范围太广的异常条款,例如未指定任何异常类或将其指定为
。 |
# noinspection PyByteLiteral | 此检查检测到字节文字中的字符> 255。 |
# noinspection PyCallByClass |
此检查按类检查方法的调用,同时将不同类的实例作为自参数传递:
有时这可能是故意的和正确的。但是,在无意的情况下,这会导致细微的错误。 |
# noinspection PyCallingNonCallable | 此检查突出了尝试调用不可调用的对象(例如元组)的尝试。 |
# noinspection PyChainedComparisons | 此检查突出了可以简化的链式比较。 |
# noinspection PyClassHasNoInit |
当类没有 init 方法,也没有其父类时,使用此检查。 |
# noinspection PyClassicStyleClass | 此检查检测经典样式类的用法。 |
# noinspection PyComparisonWithNone |
这种检查强调了与
的比较。这种类型的比较应该总是用
或
,而不是相等运算符。 |
# noinspection PyCompatibility | 如果您需要您的代码与一系列Python版本兼容(例如,如果您正在构建一个库),请启用此检查。 代码需要与之兼容的Python版本的范围可以在检查设置中指定。 |
# noinspection PyDataclass | 此检查检测使用数据类或attr模块创建的类的无效定义和用法。 |
# noinspection PyDecorator |
这个检查报告
或
修饰符在类外部函数中的用法。 |
# noinspection PyDefaultArgument | 此检查检测何时在参数的默认值中检测到作为列表或字典的可变值。默认参数值在函数定义时只计算一次,这意味着修改参数的默认值将影响函数的所有后续调用。 |
# noinspection PyDeprecation | 此检查重点介绍了Python函数、类或方法的用法,这些函数、类或方法被标记为已弃用(会引发一个弃用警告或一个待定的弃用警告)。 |
# noinspection PyDictCreation | 这种检查检测到字典创建可以用字典文字重写的情况。 |
# noinspection PyDictDuplicateKeys | 此检查重点强调两次使用与字典键相同的值。 |
# noinspection PyDocstringTypes | 此检查将突出显示docstring中与动态推断类型不匹配的类型。 |
# noinspection PyDunderSlots |
这个检查检测类中 slots 的无效定义。 |
# noinspection PyExceptClausesOrder |
这种检查强调当
子句的顺序不正确(从更具体的到更一般的)或者一个异常类被捕获两次的情况。 如果不修改顺序,某些异常可能无法被最特定的处理程序捕获。 |
# noinspection PyExceptionInherit |
此检查检测自定义异常类何时被引发,但不从内置的
类继承。 |
# noinspection PyFromFutureImport |
此检查检测
语句,该语句不在文件开头使用。 |
# noinspection PyGlobalUndefined |
当变量是通过
语句定义的,但是变量没有在模块范围内定义时,就会使用这种检查。 |
# noinspection PyInconsistentIndentation | 这种检查报告Python源文件中不一致的缩进(例如,制表符和空格的混合使用)。 |
# noinspection PyIncorrectDocstring | 该检查检测文档字符串中不匹配的参数。请注意,如果文档字符串中没有提到参数,那么它不会警告您缺少参数。 |
# noinspection PyInitNewSignature |
该检查检查 new 和 init 签名的相互兼容性。 |
# noinspection PyInterpreter | 如果当前项目没有配置Python解释器或Python解释器无效,则此检查通知您。 |
# noinspection PyListCreation | 此检查检测可以使用列表文字重写列表创建的情况。 |
# noinspection PyMandatoryEncoding | 此检查检测到文件缺少编码魔术注释。 |
# noinspection PyMethodFirstArgAssignment |
该检查检测在方法中重新分配第一个参数(如
或
)时的情况。 在可以想象的大多数情况下,这样的重新分配是没有意义的,它表明了一个错误。 |
# noinspection PyMethodMayBeStatic | 该检查可以检测到可以安全地设置为静态的任何方法。 |
# noinspection PyMethodOverriding | 此检查检测到覆盖方法签名中的不一致。 |
# noinspection PyMethodParameters |
此检查查找缺少第一个参数(通常称为
)的方法。 |
# noinspection PyMissingConstructor | 此检查警告是否错过对类中的超级构造函数的调用 |
# noinspection PyMissingOrEmptyDocstring | 此检查检测到缺少文档字符串和空文档字符串。 |
# noinspection PyMissingTypeHints | 此检查检测到缺少以下两种格式之一的函数声明的类型提示:参数注释或类型注释 |
# noinspection PyNamedTuple | 此检查检测到namedtuple的无效定义。 |
# noinspection PyNestedDecorators | 此检查查找某些嵌套不好的装饰器。 |
# noinspection PyNonAsciiChar | 此检查可检测到文件包含非ASCII字符,并且文件顶部没有编码声明。 |
# noinspection PyNoneFunctionAssignment | 此检查类似于pyintint检查E1111。它突出显示了在函数调用上完成赋值但推断的函数不返回任何内容的情况。 |
# noinspection PyOldStyleClasses | 此检查突出显示了旧类中出现了新式类特征。 |
# noinspection PyOverloads | 此检查可验证常规Python文件中的重载。 |
# noinspection PyPackageRequirements | 该检查警告有关已导入或必需但未安装的软件包。 |
# noinspection PyPep8 |
该检查运行
工具,以检查是否违反了PEP 8编码样式指南。 |
# noinspection PyPep8Naming | 此检查检查PEP8命名约定。 |
# noinspection PyPropertyAccess | 此检查检查属性是否正确访问:未设置只读,未写只读,不可删除未删除。 |
# noinspection PyPropertyDefinition |
此检查检查
和用
注释的函数的参数是否合理,并且友好地看起来是否合理。 |
# noinspection PyProtectedMember | 此检查警告是否在类之外,定义它的类的后代或模块之外访问了受保护的成员。 |
# noinspection PyProtocol | 此检查检测到PEP-544中引入的协议的无效定义和用法。 |
# noinspection PyRedeclaration |
这种检查可以检测到名称的无条件重声明,而无需在名称之间进行声明,例如:
适用于函数和类声明以及顶级分配。 |
# noinspection PyRedundantParentheses | 此检查在语句中突出显示了多余的括号。 |
# noinspection PyReturnFromInit |
此检查报告在类的 init 方法中具有返回值的
语句的出现。 构造函数不应返回任何值。 |
# noinspection PySetFunctionToLiteral |
此检查检测到对函数
的调用,该函数可以用
文字替换。 |
# noinspection PyShadowingBuiltins |
这项检查可以检测出阴影的内置名称,例如
或
。 |
# noinspection PyShadowingNames | 此检查检测外部范围中定义的阴影名称 |
# noinspection PySimplifyBooleanCheck | 此检查检测与布尔文字的相等比较。 |
# noinspection PySingleQuotedDocstring | 此检查突出显示未使用三重双引号字符串格式的文档字符串。 |
# noinspection PyStatementEffect | 此检查检测到的语句没有任何影响。 |
# noinspection PyStringException | 此检查检测何时引发字符串异常。 |
# noinspection PyStringFormat | 此检查检测字符串格式化操作中的错误。 |
# noinspection PySuperArguments |
此检查检查在对
的任何调用中,B是A的实例还是A的子类。 |
# noinspection PyTestParametrized |
用
装饰的测试函数必须具有接受装饰器参数的参数 |
# noinspection PyTrailingSemicolon | 此检查检测语句中的尾部分号。 |
# noinspection PyTupleAssignmentBalance | 该检查检查右侧的表达式数量和左侧的目标数量是否相同。 |
# noinspection PyTupleItemAssignment | 此检查检测到元组项目的分配。 |
# noinspection PyTypeChecker | 此检查可检测函数调用表达式中的类型错误。 由于动态调度和动态类型,这在有限但有用的情况下是可能的。 可以在文档字符串或Python 3函数注释中指定函数参数的类型。 |
# noinspection PyTypeHints | 该检查检测类型提示的无效用法。 |
版权声明:本文为weixin_44129085原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。