11
$ pylint --reports=n main.py

输出:

No config file found, using default configuration
4

2 回答 2

19

如果您的主目录中没有文件,或者您没有指定 pylint 参数,您将收到“ No config file found, using default configuration”警告。.pylintrc--rcfile=/path/to/pylintrc

要抑制消息,在 *nix 上:

$ touch ~/.pylintrc
于 2011-07-11T18:43:56.090 回答
3

找到了一个 pylintrc 并使用它,工作。把它贴在这里以防万一有人需要它。您可以修改它以适合您的项目。

# 使用外部检查器对 Python 模块进行 lint。
#
# 这是控制其他检查器和报告的主要检查器
# 一代。它本身既是原始检查器又是 astng 检查器
# 到:
# * 在模块级别处理消息激活/停用
# * 处理一些基本但必要的统计数据(类数、方法...)
#
[掌握]

# 指定配置文件。
#rcfile=

# 分析执行。
个人资料=否

# 加入黑名单。它应该是一个基本名称,而不是
# 小路。您可以多次设置此选项。
忽略=.svn

# Pickle 收集数据供以后比较。
持久=是

# 设置 astng 对象的缓存大小。
缓存大小=500

# 要加载的插件列表(作为 python 模块名称的逗号分隔值),
# 通常用于注册额外的检查器。
加载插件=


[消息控制]

# 仅启用具有给定 ID 的检查器。此选项与
# 禁用检查器选项
#启用检查器=

# 启用所有检查器,除了具有给定 ID 的检查器。此选项冲突
# 使用禁用检查器选项
#禁用检查器=

# 启用列出类别中的所有消息。
#启用味精猫=

# 禁用列出类别中的所有消息。
#禁用味精猫=

# 启用具有给定 ID 的消息。
#启用消息=

# 禁用给定 id 的消息。
禁用味精=C0323,W0142,C0301,C0103,C0111,E0213,C0302,C0203,W0703,R0201


[报告]

# 设置输出格式。可用格式为文本、可解析、彩色和
# html
输出格式=彩色

# 在输出中包含消息的 id
包括-ids=是

# 将消息放在一个单独的文件中,用于指定的每个模块/包
# 命令行而不是在标准输出上打印它们。报告(如果有)将
# 写入文件名“pylint_global.[txt|html]”。
文件输出=否

# 告诉是显示完整的报告还是只显示消息
报告=是

# Python 表达式应该返回一个小于 10 的音符(10 是最高的
# 注意)。您可以访问变量错误警告,声明哪个
# 分别包含错误/警告消息的数量和总数
# 分析的语句数。这被全球评估报告使用
# (R0004)。
评估=10.0 - ((float(5 * 错误 + 警告 + 重构 + 约定) / 语句) * 10)

# 根据你的评价笔记添加评论。这被全球使用
# 评估报告(R0004)。
评论=否

# 启用具有给定 ID 的报告。
#启用报告=

# 禁用具有给定 ID 的报告。
#禁用报告=


# 检查
# * 未使用的变量/导入
# * 未定义的变量
# * 从内置函数或外部范围重新定义变量
# * 在赋值前使用变量
#
[变量]

# 告诉我们是否应该检查 __init__ 文件中未使用的导入。
初始化导入=否

# 一个正则表达式匹配用于虚拟变量的名称(即未使用)。
虚拟变量-rgx=_|虚拟

# 应该在内置函数中定义的附加名称列表。请记住
# 你应该尽可能避免定义新的内置函数。
附加内置=


# 尝试使用类型推断来查找代码中的错误
#
[类型检查]

# 告诉在 mixin 类中访问的缺失成员是否应该被忽略。一种
# 如果 mixin 的名称以“mixin”结尾(不区分大小写),则检测到 mixin 类。
忽略mixin成员=是

# 当 zope 模式被激活时,考虑忽略 acquire-members 选项
# 访问一些未定义的属性。
zope=否

# 通常通过zope的获取机制获得的成员列表和
# 所以在访问时不应触发 E0201(需要考虑 zope=yes)。
获得成员=请求,acl_users,aq_parent


# 检查:
# * 文档字符串
# * 模块/类/函数/方法/参数/变量名
# * 参数、局部变量、分支、返回和语句的数量
# 函数、方法
# * 必需的模块属性
# * 危险的默认值作为参数
# * 重新定义函数/方法/类
# * 使用全局语句
#
[基本的]

# 模块的必需属性,以逗号分隔
所需属性=

# 正则表达式应该只匹配函数或类名
# 不需要文档字符串
no-docstring-rgx=__.*__

# 正则表达式应该只匹配正确的模块名称
模块-rgx=(([a-z_][a-z0-9_]*)|([AZ][a-zA-Z0-9]+))$

# 正则表达式应该只匹配正确的模块级名称
const-rgx=(([A-Z_][A-Z1-9_]*)|(__.*__))$

# 正则表达式应该只匹配正确的类名
类-rgx=[A-Z_][a-zA-Z0-9]+$

# 正则表达式应该只匹配正确的函数名
函数-rgx=[a-z_][a-z0-9_]{2,30}$

# 正则表达式应该只匹配正确的方法名
方法-rgx=[a-z_][a-z0-9_]{2,30}$

# 正则表达式应该只匹配正确的实例属性名称
attr-rgx=[a-z_][a-z0-9_]{2,30}$

# 正则表达式应该只匹配正确的参数名称
参数-rgx=[a-z_][a-z0-9_]{2,30}$

# 正则表达式应该只匹配正确的变量名
变量-rgx=[a-z_][a-z0-9_]{2,30}$

# 正则表达式应该只匹配正确的列表理解 /
# 生成器表达式变量名
inlinevar-rgx=[A-Za-z_][A-Za-z0-9_]*$

# 应始终接受的好的变量名,用逗号分隔
好名声=i,j,k,ex,Run,_

# 应该始终拒绝的错误变量名,用逗号分隔
恶名=foo,bar,baz,toto,tutu,tata

# 不应使用的内置函数名称列表,以逗号分隔
坏功能=应用,输入


# 检查不良/错误设计的迹象:
# * 方法、属性、局部变量的数量...
# * 大小、函数复杂度、方法
#
[设计]

# 函数/方法的最大参数数量
最大参数=12

# 函数/方法体的最大局部数
最大本地人=30

# 函数/方法体的最大返回次数/产量
最大回报=12

# 函数/方法体的最大分支数
最大分支 = 30

# 函数/方法体中的最大语句数
最大语句=60

# 一个班级的家长人数上限(参见 R0901)。
最大父母= 7

# 一个类的最大属性数(参见 R0902)。
最大属性=20

# 一个类的最小公共方法数(参见 R0903)。
最小公共方法=0

# 一个类的公共方法的最大数量(参见 R0904)。
最大公共方法 = 20


# 检查
# * 外部模块依赖
# * 相对/通配符导入
# * 循环导入
# * 使用已弃用的模块
#
[进口]

# 不推荐使用的模块,用逗号分隔
不推荐使用的模块=regsub、字符串、TERMIOS、堡垒、rexec

# 创建每个(即内部和外部)依赖关系的图
# 给定文件(报告 R0402 不得禁用)
导入图=

# 在给定文件中创建外部依赖关系图(报告 R0402 必须
# 不能被禁用)
分机导入图=

# 在给定文件中创建内部依赖关系图(报告 R0402 必须
# 不能被禁用)
国际进口图=


# 检查:
# * 没有 self 作为第一个参数的方法
# * 重写的方法签名
# * 仅通过 self 访问现有成员
# * __init__ 方法中未定义的属性
# * 支持的接口实现
# * 无法访问的代码
#
[课程]

# 要忽略的接口方法列表,以逗号分隔。这用于
# 不检查 Zope 接口基类中定义的方法的实例。
ignore-iface-methods=isImplementedBy,deferred,extends,names,namesAndDescriptions,queryDescriptionFor,getBases,getDescriptionFor,getDoc,getName,getTaggedValue,getTaggedValueTags,isEqualOrExtendedBy,setTaggedValue,isImplementedByInstancesOf,adaptWith,is_implemented_by

# 用于声明(即分配)实例属性的方法名称列表。
定义属性方法=__init__,__new__,setUp


# 检查相似性和重复代码。这种计算可能是
# 内存/CPU 密集型,所以如果你做一些实验,你应该禁用它
# 问题。
#
[相似之处]

# 相似度的最小行数。
最小相似度线=10

# 计算相似度时忽略注释。
忽略评论=是

# 计算相似度时忽略文档字符串。
忽略文档字符串=是


# 检查:
# * 代码中的警告说明,如 FIXME、XXX
# * PEP 263:具有非 ascii 字符但没有编码声明的源代码
#
[各种各样的]

# 要考虑的注释标签列表,以逗号分隔。
笔记=FIXME,XXX,TODO


# 检查:
# * 未经授权的建筑
# * 严格缩进
# * 行长
# * 使用 of 代替 !=
#
[格式]

# 单行的最大字符数。
最大行长=90

# 一个模块的最大行数
最大模块行=1000

# 用作缩进单元的字符串。这通常是 " " (4 个空格) 或 "\t" (1
# 标签)。
缩进字符串=''

于 2011-03-10T14:07:44.067 回答