升级Pylint至2.14.0后出现bad-option-value配置报错如何修复
报错根因
两个报错都是Pylint 2.14.0版本清理历史废弃功能导致的,和配置写法无关:
no-self-use检查器在该版本被正式移除,此前版本仅标记为待废弃,因此配置中--disable列表里的该条目无法被识别,触发bad-option-value错误no-space-check是同期被移除的旧版格式检查配置项,不存在对应生效逻辑,触发unrecognized-option错误
加disable注释不生效的原因很简单:这两个错误属于配置加载阶段的校验错误,触发时机早于实际代码检查流程,针对检查逻辑的disable注释不会拦截配置层面的报错。
修复操作
直接修改.pylintrc文件做两处调整即可:
- 找到配置中的
disable配置段,删除其中的no-self-use条目。该检查因为原有判定逻辑误报率过高被官方永久移除,不需要找替代规则补全。 - 全局搜索配置文件中所有带
no-space-check的配置行,整行删除。如果之前靠这个配置关闭空格类格式校验,现在相关校验已经拆分到bad-whitespace等现存规则下,按需调整对应规则配置即可。
如果你的.pylintrc需要同时兼容2.14.0之前的旧版Pylint,可以额外在disable列表中加上bad-option-value,避免跨版本运行时抛错,日常单版本使用不需要额外加这个配置。
修改完成后执行任意pylint检查命令即可验证,上述两个配置类报错会直接消失。
内容的提问来源于stack exchange,提问作者R. Bogaveev
相关产品推荐
相关产品推荐

