VS Code中Pylint及运行代码时无法找到Crypto库的解决方法
别担心,这种情况我碰到过好几次,大概率是VS Code的Python解释器没切换到你的虚拟环境上,或者缓存没更新。按下面的步骤一步步来,应该能解决:
第一步:确认VS Code使用的是虚拟环境的Python解释器
看VS Code左下角状态栏,会显示当前使用的Python版本和解释器路径。点击这个版本号,会弹出解释器选择列表,找到你创建的env虚拟环境下的Python.exe(路径一般是env\Scripts\python.exe,Windows系统),选中它。第二步:重启Python语言服务,刷新Pylint缓存
选完解释器后,有时候Pylint不会立刻更新。按下Ctrl+Shift+P打开命令面板,输入Python: Restart Language Server并执行,等服务重启后,Pylint的错误提示应该会消失。如果还是不行,干脆重启整个VS Code。第三步:手动配置解释器路径(如果自动选择失效)
如果第一步里找不到你的虚拟环境解释器,可以手动配置:- 按下
Ctrl+,打开设置界面,搜索Python: Default Interpreter Path - 将路径设置为你的虚拟环境Python路径,比如
${workspaceFolder}/env/Scripts/python.exe(${workspaceFolder}会自动替换成你当前打开的项目根目录) - 保存设置后,再次重启语言服务或VS Code
- 按下
第四步:检查VS Code终端的虚拟环境激活状态
打开VS Code的终端(Ctrl+),看看终端开头有没有(env)的前缀。如果没有,说明终端没激活虚拟环境,手动执行env\Scripts\activate(Windows)激活后,再运行你的代码试试。第五步:指定Pylint使用虚拟环境的版本
极少数情况下,Pylint会使用全局版本而不是虚拟环境里的。可以在设置里指定Pylint路径:
搜索Python: Linting Pylint Path,设置为env\Scripts\pylint.exe,确保Pylint和你的虚拟环境绑定。
做完这些步骤,应该就能正常导入Crypto库了,无论是代码提示还是运行都不会报错。
内容的提问来源于stack exchange,提问作者Carl

