如果你刚接触 Python,可能会听说 "虚拟环境" 这个词。别被专业术语吓到,其实它就像我们手机里的文件夹 —— 把不同的 APP 分类存放,避免乱糟糟的堆在一起。比如你用同一个手机既玩游戏又处理工作,游戏的缓存文件不会影响工作软件的运行,虚拟环境也是这个道理,能让不同 Python 项目的工具互不干扰。今天就用生活化的例子,带你认识 5 种常用的 Python 环境管理工具,还会附上具体操作步骤。
venv:Python 自带的 "简易收纳盒"想象你买了台新电脑,系统自带了一个简易收纳盒,不用额外安装就能用。venv 就是 Python3.3 以后自带的虚拟环境工具,相当于系统原生的收纳解决方案。
它的优点很明显:零安装成本,只要装了 Python 就能直接用;操作简单,像新建文件夹一样轻松。比如你想做个爬虫项目,操作步骤如下:
操作步骤:
打开命令行(Windows 系统可按 Win+R,输入 cmd 后回车;Mac 系统可打开终端)。
输入以下命令,创建一个名为 spider-env 的虚拟环境:
python -m venv spider-env
此时,你会发现当前目录下多了一个 spider-env 的文件夹,这就是你的 "爬虫专用文件夹"。
激活环境:
Windows 系统:spider-env\Scripts\activate
Mac 或 Linux 系统:source spider-env/bin/activate
激活后,命令行前面会出现 (spider-env) 字样,说明已进入该虚拟环境。
在这个环境里安装的工具,只会存在于 spider-env 文件夹中,不会影响其他地方。
当你想退出这个环境时,只需在命令行输入 deactivate 并回车即可。
适合场景:
新手练手、简单项目开发,尤其是不想折腾额外软件的朋友。
virtualenv:功能更强的 "分层收纳盒"
如果系统自带的收纳盒不够用,你可能会买个分层更细致的收纳盒。
virtualenv 就是这样的第三方工具,比 venv 支持更多 Python 版本,还能灵活复制环境。
它就像带轮子的收纳箱,既能装 Python2 也能装 Python3,还能把 A 项目的环境原样复制到 B 项目。具体操作如下:
操作步骤:
安装 virtualenv:因为它是第三方工具,需要先通过 pip(Python 的应用商店)下载。
pip install virtualenv
创建环境:输入 virtualenv data-analysis-env,就能创建一个名为 data-analysis-env 的虚拟环境。如果你的电脑上同时有 Python2 和 Python3,想指定用 Python3 创建环境,可以输入:
virtualenv -p python3 data-analysis-env
激活环境:
Windows 系统:data-analysis-env\Scripts\activate
Mac 或 Linux 系统:source data-analysis-env/bin/activate
退出环境同样使用 deactivate 命令。
复制环境:如果你想把 A 项目的环境复制到 B 项目,先在 A 项目的环境中输入:
pip freeze > requirements.txt
生成一个记录安装工具及版本的清单文件。然后在 B 项目的环境中输入:
pip install -r requirements.txt
就能安装和 A 项目相同的工具了。
适合场景:
需要兼容老版本 Python 的项目,或者经常要复制环境的多项目开发。
conda 环境:科研党的 "全能工具箱"
如果你是学数据分析的,可能需要一个能装下 Python、R 语言、数据库等工具的大箱子。Anaconda 的 conda 环境就是这样的全能选手,不仅能管理 Python 包,还能装其他编程语言的工具。
它像个专业实验室储物柜,里面预装了 Numpy、Pandas 等数据分析常用工具,开箱即用。使用前需要先安装 Anaconda(可以在官网下载对应系统的安装包,按照提示一步步安装)。安装完成后,操作步骤如下:
操作步骤:
打开 Anaconda Prompt(类似命令行的工具,在开始菜单或应用程序中能找到)。
创建环境:输入
conda create -n ml-project python=3.9
创建一个名为 ml-project、Python 版本为 3.9 的环境。创建过程中会提示是否安装相关依赖,输入 y 并回车即可。
激活环境:输入
conda activate ml-project
命令行前会显示 (ml-project)。
在这个环境里,你可以用 conda install 工具名 来安装需要的工具,比如
conda install numpy
安装 Numpy。
退出环境:输入 conda deactivate。
查看已创建的所有环境:输入
conda env list
能看到所有你创建过的环境及它们的存放路径。
适合场景:
数据分析、机器学习项目,尤其是需要混合使用多种工具的科研场景。
pipenv:现代开发者的 "智能整理助手"
传统收纳方式需要手动记录物品清单,而pipenv 就像带记账功能的收纳盒,自动帮你记录安装了哪些工具,还能解决工具版本冲突问题。
它把 pip(安装工具)和 venv(环境管理)的功能结合起来,创建环境时会自动生成两个文件:记录精确版本的 Pipfile.lock 和项目依赖清单 Pipfile。操作步骤:
操作步骤:
安装 pipenv:在命令行输入
pip install pipenv
进入你的项目文件夹:比如你的项目放在 D 盘的 myproject 文件夹,在命令行输入
cd D:\myproject
进入该目录。
创建并激活环境:输入
pipenv install
会自动创建虚拟环境并生成 Pipfile 和 Pipfile.lock 文件,同时激活环境。
安装工具:比如安装 requests 这个工具,输入
pipenv install requests
它会自动更新 Pipfile 和 Pipfile.lock。
退出环境:输入 exit。
再次进入项目时,只需进入项目目录,输入
pipenv shell
就能激活环境。
适合场景:
追求规范开发流程的现代 Python 项目,尤其适合团队协作时保持环境一致。因为大家都用这两个文件,能确保每个人安装的工具版本相同。
poetry:项目打包的 "精装礼盒"
如果你的项目需要分享给别人,poetry 就像能把收纳盒包装成精美礼盒的工具,不仅能管理依赖,还能一键把项目打包成可分发的安装包。
它解决了传统项目中 "依赖混乱""打包麻烦" 的痛点,创建项目时自动生成标准化结构。操作步骤:
操作步骤:
安装 poetry:在命令行输入
pip install poetry
创建项目:输入
poetry new myproject
会创建一个名为 myproject 的文件夹,里面包含了项目所需的标准目录结构和配置文件。
进入项目目录:cd myproject。
创建并激活环境:输入
poetry shell
会创建虚拟环境并激活。
安装依赖:输入
poetry add 工具名
比如 poetry add flask 安装 Flask 框架,它会自动管理依赖版本。
打包项目:当项目完成后,输入
poetry build
会生成可分发的安装包,存放在 dist 文件夹中。
发布到 PyPI(如果想让别人通过 pip 安装你的项目):输入
poetry publish
按照提示输入 PyPI 的账号密码即可。
适合场景:
需要发布到 PyPI(Python 软件仓库)的开源项目,或注重工程化规范的开发场景。
新手该选哪个?记住这 3 点
刚入门练手:直接用 venv,零成本入门,操作简单,能快速理解虚拟环境的基本概念。
做数据分析:优先用 conda,预装了大量数据分析工具,不用自己一个个安装,能节省很多时间。
想规范开发:从 pipenv 开始,它能帮你自动管理依赖,适合培养良好的开发习惯,之后再逐步过渡到功能更全面的 poetry。
其实这些工具就像不同款式的收纳盒,没有绝对的好坏,只有适合与否。刚开始不用贪多,选一个跟着教程实操,比如先用 venv 创建一个简单的项目,体验一下环境的激活、安装工具、退出的流程,很快就能掌握虚拟环境的精髓啦~
扫码二维码 获取免费视频学习资料
- 本文固定链接: http://www.phpxs.com/post/13336/
- 转载请注明:转载必须在正文中标注并保留原文链接
- 扫码: 扫上方二维码获取免费视频资料
查 看2022高级编程视频教程免费获取