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

Python虚拟环境激活脚本差异及PowerShell使用疑问

Python虚拟环境激活/停用脚本差异与PowerShell用法

1. activate.bat vs Activate.ps1的区别

  • activate.bat:适配CMD命令提示符的批处理脚本,仅能在CMD环境下运行,通过修改CMD的环境变量完成虚拟环境激活。
  • Activate.ps1:专为PowerShell设计的脚本,会修改PowerShell会话的环境变量,同时适配PowerShell特有的配置(如别名、模块路径),比bat脚本更贴合PowerShell环境。

2. activate.xxx与deactivate.bat的差异

  • 各类activate.xxx(包括bat、ps1,以及Linux/macOS下的shell脚本):核心作用是激活虚拟环境,修改当前终端会话的环境变量,让系统优先调用虚拟环境内的Python解释器和依赖包,激活后终端提示符会添加虚拟环境名称前缀(如.venv)。
  • deactivate.bat:作用是停用虚拟环境,将终端环境变量恢复到激活前的状态,移除提示符中的虚拟环境标识。

3. 为什么没有deactivate.ps1?

使用Activate.ps1激活环境后,PowerShell会话会自动生成一个deactivate函数,直接输入deactivate命令即可完成环境停用,无需单独的ps1脚本。

4. PowerShell下的正确用法

  1. 打开PowerShell,导航至项目目录(或直接定位到.venv/Scripts目录)
  2. 运行激活脚本:
    .\.venv\Scripts\Activate.ps1
    

    若PowerShell执行策略限制脚本运行,可临时调整当前用户的执行策略:

    Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
    
  3. 激活成功后,终端提示符会显示(.venv)前缀,此时所有Python相关操作都会基于虚拟环境执行
  4. 停用环境直接输入:
    deactivate
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.03 05:45:33