You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

VS Code中Python项目如何确保代码使用.venv虚拟环境而非全局pip包?

VS Code中Python项目如何确保代码使用.venv虚拟环境而非全局pip包?

兄弟,我之前也踩过VS Code虚拟环境和包不匹配的坑,太懂这种明明设置了但就是不行的烦躁了!咱们一步步来把问题解决掉:

一、先把虚拟环境的激活和包安装做对(最容易出错的环节)

  • 先手动激活虚拟环境:打开VS Code的终端,输入对应Windows Powershell的激活命令:
    .venv\Scripts\Activate.ps1
    
    敲完回车,终端开头应该出现(.venv)的绿色标识,这才说明虚拟环境真的激活了。
  • 必须在这个带(.venv)标识的终端里安装numpy,别在没激活的终端瞎操作:
    pip install numpy
    
  • 安装完立刻在同一个终端里敲pip list,看看输出里有没有numpy,确认它真的装到虚拟环境里了。

二、把VS Code的Python解释器绑定到虚拟环境

  • 看VS Code左下角的状态栏,有个显示Python版本的区域(比如3.11.4),点击它,在弹出的列表里找到你这个项目的.venv文件夹下的Python解释器,路径一般是./.venv/Scripts/python.exe,选它。
  • 选完之后,把当前的终端都关掉(点垃圾桶图标),重新开一个新终端,这时候终端应该自动带上(.venv)标识,不用手动激活了。

三、解决你碰到的“sys.executable指向虚拟环境但没numpy”的矛盾

你说sys.executable显示用的是.venv,但虚拟环境里没numpy,大概率是你之前装numpy的时候,终端其实没真的激活虚拟环境——比如看起来激活了但其实被系统权限拦截了,导致包装到了别的地方(比如全局残留的Python路径)。所以按照第一步的方法,在明确看到(.venv)标识的终端里重新装一遍,装完立刻pip list确认,肯定能看到numpy。

四、排查Windows Powershell的权限问题(容易被忽略的坑)

有时候Windows默认的执行策略会阻止虚拟环境的激活脚本运行,导致(.venv)标识消失。解决方法:

  • 右键点击Powershell,选“以管理员身份运行”
  • 输入命令:
    Set-ExecutionPolicy RemoteSigned
    
  • 弹出提示后敲Y确认,之后虚拟环境的激活脚本就能正常运行了。

五、最后做个验证

写个简单的测试脚本test.py

import sys
import numpy
print(f"当前使用的Python解释器路径: {sys.executable}")
print(f"Numpy版本: {numpy.__version__}")

用VS Code的运行按钮(右上角的三角形)或者激活的终端敲python test.py来运行,如果能正常输出路径和版本,就说明问题解决了!

火山引擎 最新活动