PyCharm调试模式下Python控制台报AttributeError问题求助
嗨,我之前也碰到过类似的问题,结合你的环境(PyCharm 2018.1 + Python 3.6.5 + virtualenv),这个报错大概率是旧版本PyCharm和Python 3.6的兼容性bug,或者虚拟环境配置出了问题,给你几个亲测有效的解决方案:
解决PyCharm调试控制台
AttributeError: module 'builtins' has no attribute 'interpreter'报错 方案1:升级PyCharm到兼容版本
PyCharm 2018.1算是比较老旧的版本了,对Python 3.6的调试控制台支持存在已知的兼容性问题。建议你直接升级到PyCharm 2018.3及以上版本(这个版本修复了不少和Python 3.x相关的调试控制台bug),升级完成后重新配置virtualenv解释器,再启动调试模式测试控制台。
方案2:重置PyCharm缓存
有时候PyCharm的缓存文件损坏会导致各种奇怪的问题,试试清空缓存:
- 先完全关闭PyCharm
- 删除对应系统的缓存目录:
- macOS:
~/Library/Caches/PyCharmCE2018.1 - Windows:
C:\Users\<你的用户名>\.PyCharmCE2018.1\system\caches
- macOS:
- 重新打开PyCharm,加载项目并重新确认解释器配置
- 启动调试模式,打开控制台输入命令测试
方案3:重建virtualenv环境
如果你的虚拟环境存在损坏,也可能导致这个报错,试试重建环境:
- 删除当前的虚拟环境:
# macOS/Linux rm -rf <你的虚拟环境路径> # Windows rmdir /s <你的虚拟环境路径> - 重新创建指定Python版本的虚拟环境:
virtualenv -p python3.6 <新虚拟环境名称> - 激活虚拟环境并安装项目依赖:
# macOS/Linux source <新虚拟环境名称>/bin/activate # Windows <新虚拟环境名称>\Scripts\activate pip install -r requirements.txt - 在PyCharm中重新添加这个新环境作为项目解释器,然后测试调试控制台
方案4:临时使用非调试模式的Python控制台
如果上面的方案暂时没法实施,你可以先用PyCharm顶部菜单栏的Tools > Python Console,这个控制台在非调试模式下是正常工作的,能满足日常代码测试需求,等后续升级或修复后再切换回调试控制台。
报错原因补充
你遇到的这个AttributeError,本质是PyCharm的调试控制台模块(pydevconsole.py)在初始化时,尝试访问builtins.interpreter这个属性,但由于旧版本PyCharm的pydev插件和Python 3.6的兼容性问题,这个属性没有被正确注入到内置模块中,所以才会报错。升级PyCharm是最彻底的解决办法。
内容的提问来源于stack exchange,提问作者Liu Yong
相关产品推荐
相关产品推荐

