执行flake8报错:'OptionManager'对象无'config_options'属性求助
解决flake8运行时
AttributeError: 'OptionManager' object has no attribute 'config_options'的问题 问题分析
你遇到的这个错误是由于flake8版本与依赖插件/自身组件的版本不兼容导致的。你当前使用的flake8 3.7.7是一个比较老旧的版本,它的内部代码尝试调用OptionManager的config_options属性,但这个属性在该版本的flake8架构中已经不存在或被移除了,从而触发了AttributeError。
解决方案
以下两种方法都可以解决这个问题:
方法1:安装经过验证的兼容版本组合
先卸载现有冲突的包,再安装稳定兼容的版本组合:
# 卸载现有相关包 pip3 uninstall -y flake8 flake8-docstrings flake8-polyfill # 安装兼容版本 pip3 install flake8==3.8.4 flake8-docstrings==1.5.0 flake8-polyfill==1.0.2
这个版本组合经过测试,不会出现属性缺失的问题。
方法2:直接升级到最新版flake8
最新版的flake8已经修复了这类兼容性问题,并且不再依赖flake8-polyfill(它是为旧版Python提供兼容的补丁,新版flake8已内置相关支持):
# 升级到最新稳定版 pip3 install --upgrade flake8 flake8-docstrings
升级完成后,直接运行flake8即可正常使用。
额外说明
你提到的2016年的旧bug确实已经修复,但你的问题是由于使用了过旧的flake8版本导致的新兼容性问题,并非那个旧bug的重现。升级到较新的版本是最直接有效的解决方式。
内容的提问来源于stack exchange,提问作者Bilesh Ganguly
相关产品推荐
相关产品推荐

