这是可以使用我们的多个免费在线工作站之一在 OnWorks 免费托管服务提供商中运行的命令 pylint,例如 Ubuntu Online、Fedora Online、Windows 在线模拟器或 MAC OS 在线模拟器
程序:
您的姓名
pylint的 - python代码静态检查器
概要
pylint的 [ 配置 [ ]
商品描述
pylint的 是一个 Python 源代码分析器,用于查找编程错误,有助于
强制执行编码标准并嗅探某些代码异味(如 Martin Fowler 的定义)
重构书)
Pylint 可以被视为另一个 PyChecker,因为您可以使用 PyChecker 进行几乎所有测试
也可以用 Pylint 来完成。 但是,Pylint 提供了更多功能,例如检查
代码行的长度,根据您的要求检查变量名称是否格式正确
编码标准,或检查声明的接口是否真正实现,等等。
此外,可以编写插件来添加您自己的检查。
Pylint 附带了“pylint-gui”、“pyreverse”(UML 图生成器)和“symilar”(一个
独立的相似性检查器)。
配置
- 版
显示程序的版本号并退出
--帮助,-h
显示此帮助信息并退出
--长期帮助
更详细的帮助。
主
--rcfile=
指定配置文件。
--init-hook=
要执行的 Python 代码,通常用于 sys.path 操作,例如 pygtk.require()。
--错误,-E
在错误模式下,没有错误消息的检查器被禁用,对于其他检查器,只有
显示 ERROR 消息,默认情况下不进行任何报告
--py3k 在 Python 3 移植模式下,所有检查器都将被禁用,并且只发出消息
将显示移植检查器
--忽略= [, ...]
将文件或目录添加到黑名单。 它们应该是基本名称,而不是路径。
[当前:CVS]
--持久=
Pickle 收集的数据用于以后的比较。 [当前:是]
--load-plugins=
要加载的插件列表(作为 python 模块名称的逗号分隔值),
通常用于注册额外的检查器。 [当前:无]
--jobs= , -j
使用多个进程来加速 Pylint。 [当前:1]
--extension-pkg-whitelist=
C 扩展可能来自的包或模块名称的逗号分隔列表
加载。 扩展正在加载到活动的 Python 解释器中并可能运行
任意代码 [当前:无]
指令
--help-msg=
显示给定消息 ID 的帮助消息并退出。 该值可以是逗号
分隔的消息 ID 列表。
--列表消息
生成 pylint 的消息。
--list-conf-级别
生成 pylint 的消息。
--完整文档
生成 pylint 的完整文档。
--生成rc文件
根据当前配置生成示例配置文件。 你
可以在此之前放置其他选项以将它们放入生成的配置中。
留言内容 CONTROL
--信心=
仅显示具有所列置信水平的警告。 留空以显示全部。
有效级别:HIGH、INFERENCE、INFERENCE_FAILURE、UNDEFINED [当前:无]
--启用= , -e
使用给定的 id 启用消息、报告、类别或检查器。 你可以
要么给出多个以逗号 (,) 分隔的标识符,要么将此选项设为多个
时间。 另请参阅“--disable”选项以获取示例。
--禁用= , -d
禁用具有给定 ID 的消息、报告、类别或检查器。 你可以
要么给出多个以逗号 (,) 分隔的标识符,要么将此选项设为多个
次(仅在命令行上,而不是在它应该在的配置文件中
只出现一次。您也可以使用“--disable=all”首先禁用所有内容,然后
然后重新启用特定检查。 例如,如果您只想运行
相似性检查器,您可以使用“--disable=all --enable=similarities”。 如果你
只想运行类检查器,但没有显示警告级别的消息,
使用"--disable=all --enable=classes --disable=W"
报告
--输出格式= , -F
设置输出格式。 可用格式为文本、可解析、彩色、msvs
(视觉工作室)和 html。 你也可以给记者课,例如
mypackage.mymodule.MyReporterClass。 [当前:文本]
--files-output=
将消息放在命令中指定的每个模块/包的单独文件中
行而不是在标准输出上打印它们。 报告(如果有)将写入文件
名称“pylint_global.[txt|html]”。 [当前:没有]
--报告= , -r
告诉是显示完整报告还是仅显示消息 [当前:是]
--评估=
Python 表达式应返回小于 10 的音符(10 是最高音符)。
您可以访问变量错误警告,声明分别
包含错误/警告消息的数量和语句的总数
分析了。 全球评估报告 (RP0004) 使用了这一点。 [当前:10.0 -
((float(5 * 错误 + 警告 + 重构 + 约定) / 语句) * 10)]
--评论=
根据您的评估笔记添加评论。 这是全球使用的
评估报告 (RP0004)。 [当前:没有]
--msg-模板=
用于显示消息的模板。 这是一个python新样式的格式字符串,用于
格式化消息信息。 有关所有详细信息,请参阅文档
例外
--overgeneral-exceptions=
被捕获时会发出警告的异常。 默认为“异常”
[当前:例外]
课程设置
--ignore-iface-methods=
要忽略的接口方法列表,以逗号分隔。 这用于
不检查 Zope 的 Interface 基类中定义的方法的实例。 [当前的:
isImplementedBy、deferred、extends、names、namesAndDescriptions、queryDescriptionFor、getBases、getDescriptionFor、getDoc、getName、getTaggedValue、getTaggedValueTags、isEqualOrExtendedBy、setTaggedValue、isImplementedByInstancesOf、adaptWith、is_implemented_by]
--defining-attr-methods=
用于声明(即分配)实例属性的方法名称列表。 [当前的:
__init__,__new__,设置]
--valid-classmethod-first-arg=
类方法中第一个参数的有效名称列表。 [当前:cls]
--valid-metaclass-classmethod-first-arg=
元类类方法中第一个参数的有效名称列表。 [当前的:
微信]
--exclude-protected=
成员名称列表,应从受保护的访问警告中排除。
[当前:_asdict,_fields,_replace,_source,_make]
记录
--logging-modules=
日志模块检查字符串格式参数是否在日志功能中
参数格式[当前:日志记录]
变数
--init-import=
告诉我们是否应该检查 __init__ 文件中未使用的导入。 [当前:没有]
--dummy-variables-rgx=
匹配虚拟变量名称的正则表达式(即预期不是
用过的)。 [当前:_$|虚拟]
--additional-builtins=
应该在内置函数中定义的附加名称列表。 记住你
应尽可能避免定义新的内置函数。 [当前:无]
--回调=
可以通过名称识别回调函数的字符串列表。 回调名称
必须以这些字符串之一开始或结束。 [当前:cb_,_cb]
DESIGN
--max-args=
函数/方法的最大参数数 [当前:5]
--ignored-argument-names=
与此表达式匹配的参数名称将被忽略。 默认命名为
前导下划线 [当前:_.*]
--max-locals=
函数/方法体的最大局部数 [当前:15]
--max-returns=
函数/方法体的最大返回/收益数 [当前:6]
--max-分支=
函数/方法体的最大分支数 [当前:12]
--max-statements=
函数/方法体中的最大语句数 [当前:50]
--max-parents=
一个班级的最大家长人数(见 R0901)。 [当前:7]
--max-attributes=
一个类的最大属性数(见 R0902)。 [当前:7]
--min-public-methods=
一个类的最少公共方法数(参见 R0903)。 [当前:2]
--max-public-methods=
一个类的最大公共方法数(参见 R0904)。 [当前:20]
基础课程
--required-attributes=
模块的必需属性,以逗号分隔 [当前:无]
--坏功能=
不应使用的内建函数名称列表,以逗号分隔
[当前:地图,过滤器,输入]
--好名字=
应始终接受的良好变量名称,以逗号分隔 [当前:
我,j,k,ex,运行,_]
--坏名=
应始终拒绝的错误变量名称,以逗号分隔 [当前:
foo,bar,baz,toto,tutu,tata]
--name-group=
以冒号分隔的名称集,当
名称正则表达式允许多种样式。 [当前:无]
--include-naming-hint=
使用 invalid-name [current: no] 包含正确命名格式的提示
--function-rgx=
正则表达式匹配正确的函数名称 [当前:[a-z_][a-
z0-9_]{2,30}$]
--function-name-hint=
函数名称的命名提示 [当前:[a-z_][a-z0-9_]{2,30}$]
--variable-rgx=
正则表达式匹配正确的变量名 [当前:[a-z_][a-
z0-9_]{2,30}$]
--variable-name-hint=
变量名称的命名提示 [当前:[a-z_][a-z0-9_]{2,30}$]
--const-rgx=
正则表达式匹配正确的常量名 [当前: (([A-Z_][A-
Z0-9_]*)|(__.*__))$]
--const-name-hint=
常量名称的命名提示 [当前:(([A-Z_][A-Z0-9_]*)|(__.*__))$]
--attr-rgx=
正则表达式匹配正确的属性名称 [当前:[a-z_][a-
z0-9_]{2,30}$]
--attr-name-hint=
属性名称的命名提示 [当前:[a-z_][a-z0-9_]{2,30}$]
--argument-rgx=
正则表达式匹配正确的参数名称 [当前:[a-z_][a-
z0-9_]{2,30}$]
--argument-name-hint=
参数名称的命名提示 [当前:[a-z_][a-z0-9_]{2,30}$]
--class-attribute-rgx=
正则表达式匹配正确的类属性名称[当前:([A-Za-z_][A-
Za-z0-9_]{2,30}|(__.*__))$]
--class-attribute-name-hint=
类属性名称的命名提示 [当前:([A-Za-z_][A-Za-
z0-9_]{2,30}|(__.*__))$]
--inlinevar-rgx=
正则表达式匹配正确的内联迭代名称 [当前:[A-Za-z_][A-
扎-z0-9_]*$]
--inlinevar-name-hint=
内联迭代名称的命名提示 [当前:[A-Za-z_][A-Za-z0-9_]*$]
--class-rgx=
正则表达式匹配正确的类名 [当前:[A-Z_][a-zA-Z0-9]+$]
--class-name-hint=
类名的命名提示 [当前:[A-Z_][a-zA-Z0-9]+$]
--module-rgx=
正则表达式匹配正确的模块名称[当前:(([a-z_][a-z0-9_]*)|([A-
Z][a-zA-Z0-9]+))$]
--module-name-hint=
模块名称的命名提示 [当前:(([a-z_][a-z0-9_]*)|([AZ][a-zA-Z0-9]+))$]
--method-rgx=
正则表达式匹配正确的方法名称[当前:[a-z_][a-z0-9_]{2,30}$]
--method-name-hint=
方法名称的命名提示 [当前:[a-z_][a-z0-9_]{2,30}$]
--no-docstring-rgx=
正则表达式应该只匹配不匹配的函数或类名
需要一个文档字符串。 [当前的: __。*__]
--docstring-min-length=
需要文档字符串的函数/类的最小行长度,较短的是
豁免。 [当前:-1]
其他条款
--notes=
要考虑的笔记标签列表,用逗号分隔。 [当前的:
修复,XXX,待办事项]
打字机
--ignore-mixin-members=
告诉是否应忽略在 mixin 类中访问的缺失成员。 一个混合
如果类的名称以“mixin”结尾(不区分大小写),则会检测到类。 [当前:是]
--忽略模块=
不应检查其成员属性的模块名称列表(对于
在运行时操作命名空间并因此存在的模块/项目
静态分析无法推导出成员属性[当前:无]
--ignored-classes=
不应检查其成员属性的类名称列表(对于
具有动态设置的属性的类)。 [当前:SQLObject]
--zope=
当 zope 模式被激活时,将一组预定义的 Zope 获得的属性添加到
生成成员。 [当前:没有]
--生成成员=
pylint 推理系统动态设置的成员列表,
因此在访问时不应触发 E1101。 Python正则表达式是
公认。 [当前:请求,acl_users,aq_parent]
拼写
--spelling-dict=
拼写字典名称。 可用词典:无。 为了使它工作安装
蟒蛇附魔包。 [当前:无]
--spelling-ignore-words=
不应检查的逗号分隔单词列表。 [当前:无]
--spelling-private-dict-file=
包含私人字典的文件的路径; 每行一个字。 [当前的:
没有任何]
--spelling-store-unknown-words=
告诉是否将未知单词存储到 --spelling- 中指示的私人词典
private-dict-file 选项而不是引发消息。 [当前:没有]
FORMAT
--max-line-length=
单行的最大字符数。 [当前:100]
--ignore-long-lines=
允许长度超过限制的行的正则表达式。 [当前:^(#
)? ?$]
--single-line-if-stmt=
如果没有 else,则允许 if 的主体与测试在同一行。
[当前:没有]
--no-space-check=NO_SPACE_CHECK
禁用空格检查的可选构造列表 [当前:
尾随逗号,字典分隔符]
--max-module-lines=
一个模块中的最大行数 [当前:1000]
--缩进字符串=
用作缩进单元的字符串。 这通常是“”(4 个空格)或“”(1 个制表符)。
[当前的: ' ']
--indent-after-paren=
悬挂或连续行内所需的缩进空格数。 [当前的:
4]
--expected-line-ending-format=
行尾的预期格式,例如空(任何行尾)、LF 或 CRLF。 [当前的:
没有任何]
进口商品
--deprecated-modules=
不应使用的已弃用模块,以逗号分隔 [当前:
regsub、TERMIOS、堡垒、rexec]
--import-graph=
创建给定文件中每个(即内部和外部)依赖关系的图表
(报告 RP0402 不得禁用)[当前:无]
--ext-import-graph=
在给定文件中创建外部依赖关系图(报告 RP0402 不得
被禁用)[当前:无]
--int-import-graph=
在给定文件中创建内部依赖关系图(报告 RP0402 不得
被禁用)[当前:无]
相似之处
--min-similarity-lines=
相似度的最小行数。 [当前:4]
--忽略评论=
计算相似性时忽略注释。 [当前:是]
--ignore-docstrings=
计算相似性时忽略文档字符串。 [当前:是]
--ignore-imports=
计算相似性时忽略导入。 [当前:没有]
环境 变数
使用了以下环境变量:
* 皮林之家
将存储运行持久性的目录的路径。 如果没有找到,
它默认为 〜/.pylint.d/ 或 .pylint.d(在当前工作目录中)。
* 皮林特
配置文件的路径。 有关用于搜索的方法,请参阅文档
用于配置文件。
OUTPUT
使用默认文本输出,消息格式为:
MESSAGE_TYPE:LINE_NUM:[对象:] MESSAGE
有5种消息类型:
* (C) 约定,用于违反编程标准
* (R) 重构,针对糟糕的代码味道
* (W) 警告,针对 python 特定问题
* (E) 错误,用于代码中可能的错误
* (F) 致命的,如果发生错误导致 pylint 无法进一步执行
处理。
OUTPUT 状态 守则
Pylint 应该离开以下状态代码:
* 0 如果一切顺利
* 1 如果发出了致命消息
* 2 如果发出错误消息
* 4 如果发出警告消息
* 8 如果发出重构消息
* 16 如果发布了约定消息
* 32 关于使用错误
状态 1 到 16 将进行位或运算,因此您可以知道已发布哪些不同的类别
通过分析pylint输出状态码
使用 onworks.net 服务在线使用 pylint