You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python虚拟环境激活后调用主系统pip 已安装gtts无法识别问题

问题原因

  • 虚拟环境激活操作未实际生效,当前终端的环境变量未被虚拟环境配置覆盖,导致终端调用的pip仍然是全局环境下的程序,而非虚拟环境内的pip。
  • 常见触发场景:
    1. 使用PowerShell终端执行activate.bat:PowerShell默认限制未签名脚本运行,activate.bat实际未执行成功,没有修改当前会话的环境变量
    2. 系统环境变量中全局Python的路径优先级高于当前目录,即使激活脚本执行完成,终端检索可执行文件时仍优先匹配到全局的pip、python程序

解决方案

方法1:CMD终端下正确激活

  1. 打开CMD终端(不要使用PowerShell)
  2. 在项目根目录直接执行激活命令,不需要提前进入venv/Scripts目录:
    venv\Scripts\activate.bat
  3. 激活成功后终端行首会出现(venv)标识,可执行pip --version验证,返回路径包含venv目录即为生效,此时再执行pip freeze即可显示虚拟环境内的依赖包。

方法2:配置PowerShell激活权限

如果你习惯使用PowerShell,可按以下步骤修改配置:

  1. 右键以管理员身份打开PowerShell,执行命令:
    Set-ExecutionPolicy RemoteSigned
    输入Y确认修改,该配置仅允许本地未签名脚本运行,无额外安全风险。
  2. 回到项目根目录,执行PowerShell版本的激活脚本:
    venv\Scripts\Activate.ps1
    注意此处使用.ps1后缀的脚本,而非CMD使用的.bat后缀脚本,激活成功后行首同样会出现(venv)标识。

临时规避方案

如果不想修改终端配置,可每次直接指定虚拟环境内的程序路径执行操作:

  • 安装依赖:venv\Scripts\pip.exe install 包名
  • 运行代码:venv\Scripts\python.exe 脚本名.py
  • 查看已安装依赖:venv\Scripts\pip.exe freeze

内容的提问来源于stack exchange,提问作者Tasukete Onegaishimasu

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.13 19:09:00