vscode搭建python项目隔离的虚拟环境

1作用

1. 依赖隔离 - 避免版本冲突

2. 项目环境纯净与可复现

3. 简化开发与部署流程

2实操

2-1创建文件夹

2-2创建文件并右键并点击"在集成终端中打开"

2-3在终端中输入创建

复制代码
python3 -m venv lazyllm-venv

创建虚拟环境

将生成如图所示的文件

2-4激活虚拟环境

(激活)

再终端中在输入

"PowerShell 是 Windows 命令行工具"

复制代码
.\lazyllm-venv\Scripts\Activate.ps1

代码解释

复制代码
1 . (点号)
在 PowerShell 中,点号 . 是一个特殊的操作符,称为"点源操作符"。
它的作用是在当前的 PowerShell 会话中执行一个脚本文件。
这一点至关重要。如果不用 . 而是直接运行 .\lazyllm-venv\Scripts\Activate.ps1,PowerShell 会启动一个新的、独立的进程来运行这个脚本。脚本运行完毕后,新进程会立即关闭,它对环境变量(如 PATH)所做的所有修改都会随之消失,等于什么都没发生。
使用 . 可以确保脚本所做的修改(比如修改环境变量)持久地保留在你当前的这个 PowerShell 窗口中。
2 \ (反斜杠)
这是 Windows 系统中标准的路径分隔符。
3 lazyllm-venv
这是一个文件夹的名称。
从命名规范来看(-venv 后缀),这几乎可以肯定是一个 Python 虚拟环境 的根目录。虚拟环境是 Python 项目开发中的一个最佳实践,用于为每个项目创建一个隔离的、独立的 Python 运行环境。
4 Scripts
这是 Windows 上 Python 虚拟环境目录下的一个标准子文件夹。
它包含了该虚拟环境的可执行文件和脚本,例如 python.exe, pip.exe, 以及用于激活/停用环境的脚本               5    Activate.ps1。
(在 Linux 或 macOS 上,这个文件夹通常叫 bin)。

Activate.ps1
这是 PowerShell 的脚本文件(.ps1 是 PowerShell 脚本的扩展名)。
它的名字 Activate 表明了它的功能:激活。
这个脚本里包含了一系列命令,用于修改当前会话的环境变量,从而"切换"到这个虚拟环境。

注意

如果是初次使用将会报如图所示的错误

原因:PowerShell的执行策略(Execution Policy),从默认的Restricted(受限)模式改为RemoteSigned(远程签名)模式,目的是允许运行本地脚本。

查看当前策略

复制代码
Get-ExecutionPolicy
  • 功能:获取当前PowerShell会话的执行策略设置
  • 输出Restricted
  • 含义:当前处于受限模式,禁止运行所有脚本文件
修改执行策略
复制代码
Set-ExecutionPolicy RemoteSigned
  • 功能 :将执行策略设置为RemoteSigned

  • 参数说明

    • RemoteSigned:允许运行本地脚本,但要求从网络下载的脚本必须有数字签名
  • 安全提示:系统会弹出警告,提醒用户修改执行策略可能带来的安全风险

    [Y] 是(Y) [A] 全是(A) [N] 否(N) [L] 全否(L) [S] 暂停(S) [?] 帮助 (默认值为"N"):Y

  • 用户输入Y(确认更改)

  • 作用:用户明确同意修改执行策略

验证修改结果
复制代码
Get-ExecutionPolicy
  • 输出RemoteSigned
  • 含义:确认执行策略已成功修改
扩展

激活成功

备注

注意文件路径

或者直接复制完整路径

(XXX)再路径 即为激活成功

退出环境

复制代码
    deactivate

创建文件并运行(进入运行环境,并激活环境,再按F5运行文件)

相关推荐
Swizard2 小时前
别再让你的 Python 傻等了:三分钟带你通过 asyncio 实现性能起飞
python
Darkershadow4 小时前
python学习之串口通信
python·学习
deng-c-f4 小时前
配置(11):vscode中使用bookmarks扩展
ide·vscode·编辑器
3824278275 小时前
python:输出JSON
前端·python·json
也许是_5 小时前
大模型应用技术之 详解 MCP 原理
人工智能·python
沙漠豪6 小时前
提取PDF发票信息的Python脚本
开发语言·python·pdf
F_D_Z7 小时前
【Python】家庭用电数据的时序分析
python·数据分析·时序分析·序列分解
a程序小傲7 小时前
蚂蚁Java面试被问:注解的工作原理及如何自定义注解
java·开发语言·python·面试
love530love8 小时前
【笔记】ComfyUI “OSError: [WinError 38] 已到文件结尾” 报错解决方案
人工智能·windows·python·aigc·comfyui·winerror 38