FEATURED · 精选文章

Python虚拟环境与pip使用指南:VS Code中项目依赖管理的正确姿势

发布时间 / 2026/8/17 9:01:23
来源 / 创域科博编辑部
栏目 / 资讯中心
Python虚拟环境与pip使用指南:VS Code中项目依赖管理的正确姿势 1. 项目概述为什么新手需要从虚拟环境开始如果你刚接触Python或者刚开始在Windows上用Visual Studio这里通常指VS Code因为Visual Studio IDE对Python的支持也日益完善但VS Code是目前更主流的轻量级选择写代码那么“pip install”和“虚拟环境”这两个词你肯定绕不过去。我见过太多新手包括几年前的我自己直接在电脑的全局Python环境里一顿“pip install”结果项目跑不起来或者A项目需要的库版本把B项目搞崩了最后只能重装Python非常痛苦。简单来说“pip install”是你的武器库管理员负责从互联网仓库PyPI里下载并安装各种Python库library比如数据分析的pandas、画图的matplotlib。而**“虚拟环境”就是你为每个项目准备的独立作战训练场**。在这个训练场里你可以随意安装、升级、降级任何库而不会影响到其他项目更不会污染你电脑的“大本营”系统Python环境。所以这个“新手笔记”的核心就是教你如何在Windows上的Visual Studio Code后文简称VS Code里安全、规范地使用pip安装库并为核心技能——创建和管理虚拟环境——打下坚实基础。这不仅是写Python代码的第一步更是养成良好开发习惯、避免未来无数坑的关键一步。无论你目标是数据分析、网站开发还是玩转AI这套流程都是通用的起点。2. 核心概念与工具准备2.1 Python与pip基石与桥梁首先你得确保你的“基石”已经就位。没有Python一切都无从谈起。Python安装前往 Python官网 下载Windows安装器。这里有个至关重要的细节安装时务必勾选“Add Python X.X to PATH”这个选项。这个操作相当于给系统装了一个指路牌让你在命令行如CMD或PowerShell里直接输入python或pip命令时系统能知道去哪里找它们。很多新手遇到的“不是内部或外部命令”错误十有八九是因为漏了这一步。安装完成后验证一下。打开Windows终端在开始菜单搜索“cmd”或“PowerShell”输入python --version pip --version如果两行命令都成功返回了版本号例如Python 3.11.5和pip 23.2.1恭喜你基础环境配置成功。pip是什么它是Python的包管理工具全称是“Pip Installs Packages”。你可以把它想象成一个无比强大的“应用商店”里面存放了全球开发者贡献的数十万个Python库。当你需要某个功能时比如处理Excel文件你不需要自己从头写代码只需要告诉pippip install openpyxl它就会自动下载、安装这个库及其依赖。2.2 虚拟环境项目的独立沙盒为什么需要虚拟环境我们来看一个经典场景项目A需要pandas的1.0版本。项目B需要pandas的2.0版本这个新版本修改了一些旧版本的函数用法。如果你在全局环境里只能安装一个版本的pandas。安装了2.0项目A就崩溃退回到1.0项目B又无法运行。陷入两难。虚拟环境Virtual Environment就是为了解决这个矛盾而生的。它为每个Python项目创建一个隔离的目录这个目录里包含独立的Python解释器副本、pip工具以及一套独立的第三方库。项目A和项目B各自拥有完全独立的“沙盒”库版本互不干扰。Python 3.3以后官方就内置了创建虚拟环境的模块venv我们不需要安装任何额外工具就能使用它这也是本文推荐的核心方法。2.3 Visual Studio Code我们的主战场VS Code是一个轻量级但功能强大的源代码编辑器对Python的支持通过扩展达到“IDE级”的水平。它将成为我们创建、切换、管理虚拟环境以及编写、运行、调试代码的指挥中心。你需要做的是从官网下载并安装VS Code。安装Python扩展。打开VS Code点击左侧活动栏的扩展图标或按CtrlShiftX搜索“Python”找到由Microsoft发布的那个点击安装。这个扩展提供了代码智能提示、调试、测试、虚拟环境管理等几乎所有你需要的功能。3. 手把手创建并激活虚拟环境理论讲完我们进入实战。假设我们要开始一个名为my_project的新项目。3.1 使用venv创建虚拟环境最标准、最推荐的方式是使用Python自带的venv模块。创建项目文件夹并打开在你想存放代码的地方比如桌面或D盘新建一个文件夹命名为my_project。然后在这个文件夹里按住Shift键并点击鼠标右键选择“在此处打开PowerShell窗口”或“打开命令窗口”。执行创建命令在打开的终端里输入以下命令python -m venv venvpython -m venv告诉Python我要运行venv这个模块。最后一个venv这是你为虚拟环境文件夹起的名字。这是一个广泛使用的约定俗成的名字清晰表明这个文件夹的作用。你也可以叫它.venv、env等。执行后你会发现在my_project文件夹下多了一个名为venv的文件夹。这个文件夹里就存放着你这个项目独立的Python世界。注意有些教程可能会教你用virtualenv这个第三方工具。对于新手我强烈建议先用好自带的venv它更简单、更标准无需额外安装。除非你有非常特殊的需求比如需要创建不同Python版本的虚拟环境否则venv完全够用。3.2 激活虚拟环境创建好环境后它还是“沉睡”状态。我们需要“激活”它让当前的终端会话进入这个虚拟环境。激活后终端的命令提示符前通常会显示环境名如(venv)之后所有pip install和python命令都只作用于这个环境。在PowerShell中激活Windows推荐.\venv\Scripts\Activate.ps1执行后你会看到命令行前面出现了(venv)字样。在命令提示符CMD中激活.\venv\Scripts\activate.bat实操心得如果你在PowerShell中执行激活脚本时遇到“禁止执行脚本”的错误这是因为系统的执行策略限制。可以以管理员身份打开一个新的PowerShell输入Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser输入Y确认。这个操作是安全的它允许你运行本地创建的脚本。完成后再回到项目目录激活即可。3.3 在VS Code中关联虚拟环境在终端里激活环境是暂时的关闭终端就失效了。我们需要让VS Code这个“主战场”永久识别并使用我们这个项目的虚拟环境。用VS Code打开my_project文件夹“文件” - “打开文件夹”。按CtrlShiftP打开命令面板输入“Python: Select Interpreter”并选择。在弹出的列表中VS Code会自动扫描到你项目下的虚拟环境。它通常显示为Python 3.x.x (‘venv’: venv)。选择它。选择后VS Code右下角的状态栏会显示当前使用的解释器变成了(venv: venv)。同时VS Code会自动在新的集成终端Terminal里为你激活这个虚拟环境。从此以后只要你在这个项目里打开新的终端它都会自动处于激活的虚拟环境中无需手动执行激活命令非常方便。4. 在虚拟环境中使用pip安装库环境准备好了现在可以安全地安装任何你需要的库了。确保你的终端前面有(venv)标识。4.1 基础安装与升级安装最新版库比如安装用于HTTP请求的requests库。pip install requestspip会从PyPI下载requests及其所有依赖项并安装到你的venv环境里。安装指定版本如果你知道项目需要某个特定版本。pip install pandas1.5.3升级已安装的库pip install --upgrade pandas4.2 使用requirements.txt管理依赖一个专业的项目不应该让合作者手动记下需要安装哪些库。我们会用一个名为requirements.txt的文本文件来记录所有依赖。生成requirements.txt当你在这个虚拟环境里安装好所有项目必需的库后在项目根目录下运行pip freeze requirements.txt这个命令会将当前环境中所有通过pip安装的库及其精确版本号输出到requirements.txt文件中。文件内容类似pandas1.5.3 requests2.31.0 numpy1.24.3根据requirements.txt一键安装当你的同事克隆了你的项目代码或者你在新电脑上部署项目时只需要先创建并激活虚拟环境然后运行pip install -r requirements.txtpip会自动读取文件安装所有指定版本的库。这确保了所有开发者和部署环境的一致性是团队协作和项目复现的黄金标准。4.3 国内镜像源加速直接从国外的PyPI官方源下载速度可能很慢甚至失败。我们可以将下载源切换到国内的镜像站速度会有质的飞跃。临时使用在pip install命令后加上-i参数。pip install pandas -i https://pypi.tuna.tsinghua.edu.cn/simple设为默认推荐在用户目录C:\Users\你的用户名\下创建一个名为pip的文件夹在里面新建一个文件pip.ini写入以下内容[global] index-url https://pypi.tuna.tsinghua.edu.cn/simple trusted-host pypi.tuna.tsinghua.edu.cn这样之后所有的pip install命令都会默认使用清华镜像源。常用的还有阿里云(https://mirrors.aliyun.com/pypi/simple/)、中科大等镜像。5. 常见问题与深度排错指南即使按照步骤操作新手也难免会遇到问题。这里我整理了几个最高频的“坑”及其解决方案。5.1 “pip不是内部或外部命令”问题现象在CMD或PowerShell中输入pip系统提示“pip不是内部或外部命令也不是可运行的程序”。根本原因Python安装时未将pip添加到系统环境变量PATH中或者Python本身就没在PATH里。解决方案检查Python安装首先确认python --version命令是否有效。如果无效需要重新安装Python并勾选“Add to PATH”。手动将pip加入PATH如果python有效但pip无效可以找到Python安装目录下的Scripts文件夹例如C:\Users\你的用户名\AppData\Local\Programs\Python\Python311\Scripts将这个路径添加到系统的PATH环境变量中。使用Python模块方式调用pip这是最保险的方式无需依赖PATH。在任何地方你都可以用python -m pip来代替pip命令。例如python -m pip install requests python -m pip --version我强烈建议新手养成使用python -m pip的习惯它能避免很多因环境变量导致的问题。5.2 安装库时超时或报SSL错误问题现象pip install过程中卡住最后报错ReadTimeoutError或SSLError。原因与解决网络超时主要是网络连接PyPI服务器不稳定。首要解决方案就是配置上文提到的国内镜像源这是最根本的提速方法。SSL证书问题在某些严格的内网环境下可能出现。可以尝试临时禁用SSL验证仅用于测试不推荐长期使用pip install some-package --trusted-host pypi.org --trusted-host files.pythonhosted.org或者更一劳永逸的方法是像前面一样在pip.ini配置文件中为你的镜像源添加trusted-host。5.3 权限不足导致的安装失败问题现象在安装某些需要编译或写入系统目录的包时报错Permission denied。原因在Windows上如果你尝试在系统目录如C盘的Python安装目录下安装包或者虚拟环境所在路径有权限限制可能会遇到此问题。解决方案始终在虚拟环境中操作这是最佳实践。虚拟环境目录通常在你的用户文件夹下拥有完全的控制权几乎不会遇到权限问题。以管理员身份运行终端如果确实需要在全局Python中安装不推荐可以右键点击CMD或PowerShell选择“以管理员身份运行”再执行安装命令。使用--user标志这个标志会将包安装到当前用户的专属目录%APPDATA%\Python下避免系统目录权限问题。pip install --user package_name但请注意这依然是在“用户级”的全局环境不同项目间仍可能产生冲突。对于项目开发坚持使用虚拟环境是唯一正确的选择。5.4 VS Code未正确识别或切换虚拟环境问题现象VS Code底部状态栏显示的不是你项目的venv或者终端里没有(venv)提示符。排查步骤检查解释器选择再次按CtrlShiftP运行“Python: Select Interpreter”确保选中了./venv/Scripts/python.exe这个路径。重启VS Code有时扩展需要重新加载才能生效。检查终端自动激活打开VS Code的集成终端查看其是否自动执行了激活脚本。如果没有可以检查VS Code设置Ctrl,搜索“Python Terminal Activate Environment”确保该选项是勾选的。手动在VS Code终端激活如果自动激活失效你可以在VS Code打开的终端里手动执行.\venv\Scripts\Activate.ps1PowerShell或.\venv\Scripts\activate.batCMD。5.5 虚拟环境文件夹venv是否应该提交到Git这是一个常见的工程实践问题。结论不应该。venv文件夹通常很大几百MB里面包含完整的Python解释器和所有库的二进制文件。这些文件可以通过pip install -r requirements.txt快速重建。将其提交到Git仓库会极大增加仓库体积拖慢克隆速度。可能包含与操作系统或平台相关的二进制文件在其他系统上可能无法运行。正确的做法将venv添加到你的.gitignore文件版本控制忽略文件中。务必提交requirements.txt文件。在项目的README.md中写明开发者需要先创建虚拟环境然后运行pip install -r requirements.txt来安装依赖。一个典型的Python项目的.gitignore开头部分就包含了venv/、env/、.venv/等虚拟环境目录模式。6. 虚拟环境的高级管理与优化技巧掌握了基础操作后了解一些进阶技巧能让你的开发流程更顺畅。6.1 快速复制或重建环境有时你需要基于一个已有的环境配置创建一个一模一样的新环境。方法一使用requirements.txt最通用。在老环境中生成requirements.txt在新位置创建新虚拟环境后用pip install -r requirements.txt安装。方法二使用venv --copies仅限文件复制。创建环境时使用python -m venv new_venv --copies这会复制解释器文件而非创建符号链接在某些对文件完整性要求高的场景下有用但不会复制已安装的第三方包。6.2 清理无用的安装缓存pip在安装过程中会下载缓存包通常位于%LocalAppData%\pip\cache。长期积累会占用不少空间。可以定期清理pip cache purge这个命令会清空pip的整个缓存目录。6.3 查看环境详细信息想了解当前虚拟环境里都装了些什么以及它们的依赖关系pip list列出所有已安装的包及其版本。pip show package_name显示某个特定包的详细信息包括其安装位置、依赖哪些包、被哪些包依赖等。pip check检查已安装的包之间是否有依赖冲突。如果一切正常该命令无输出如果发现冲突它会明确指出哪些包不兼容。6.4 处理复杂的依赖冲突当你安装一个新包时pip可能会提示因为依赖关系无法安装。例如包A需要numpy1.20而包B需要numpy1.20。解决策略尝试安装兼容版本首先看能否找到同时满足两个包的numpy版本范围。如果没有则可能需要寻找功能类似的、依赖不冲突的替代包。使用依赖解析能力更强的工具对于极其复杂的项目可以考虑使用poetry或pipenv这类更现代的包管理工具它们能提供更好的依赖解析和锁定功能。但对于新手和大多数项目pipvenvrequirements.txt的组合已经足够强大和简单。我个人在Windows上用VS Code进行Python开发超过五年这套“venv虚拟环境 pip requirements.txt VS Code”的工作流始终是最稳定、最通用、最容易被团队接受的方案。它可能不是最“炫酷”的但绝对是基石。把这一步走扎实了后面无论学习Flask、Django、PyTorch还是任何其他框架你都能从容地管理它们的依赖保持开发环境的整洁和项目的可复现性。记住好的开始是成功的一半而一个独立的虚拟环境就是你每一个Python项目最好的开始。
RELATED — 相关阅读

相关资讯

LATEST — 最新资讯

最新发布

TODAY — 本日精选

新闻

WEEKLY — 本周精选

新闻

MONTHLY — 本月精选

新闻