K.I.S.S---Keep IT Simple,Stupid!    人生苦短,我用Python

python如何设置虚拟环境|方法有哪几种

 
分类: 问答 2024年1月31日

为什么需要虚拟环境?
在使用Python语言时,通过pip(pip3)来安装第三方包,但是由于pip的特性,系统中只能安装每个包的一个版本。但是在实际项目开发中,不同项目可能需要第三方包的不同版本,迫使我们需要根据实际需求不断进行更新或卸载相应的包,而如果我们直接使用本地的Python环境,会导致整体的开发环境相当混乱而不易管理,这时候我们就需要开辟一个独立干净的空间进行开发和部署,虚拟环境就孕育而生。

以下是一些主要的原因:

  1. 隔离项目依赖: 不同的项目可能需要不同版本的依赖库。虚拟环境允许您在每个项目中创建一个独立的Python环境,以确保项目所需的特定依赖关系不会干扰其他项目。

  2. 版本兼容性: 有些项目可能对特定版本的库有依赖,而另一些项目可能需要不同版本。虚拟环境允许您为每个项目指定特定的依赖版本,确保版本兼容性。

  3. 避免全局污染: 在全局Python环境中安装依赖可能会导致全局污染,使得各个项目之间的依赖冲突。通过使用虚拟环境,每个项目都有自己的隔离空间,不会影响系统的全局Python环境。

  4. 便于迁移和分享: 虚拟环境的存在使得项目更容易分享给他人或在不同系统上迁移。通过将虚拟环境信息包含在项目中,其他人可以轻松地在其环境中重建相同的开发环境。

  5. 简化部署: 在生产环境中使用虚拟环境可以确保部署是一致的,并且不受系统全局环境中其他应用程序的影响。这有助于避免潜在的兼容性问题。

总体来说,虚拟环境使得项目的开发和维护更加清晰、可维护,并有助于解决依赖关系管理的挑战。在大型或复杂的项目中,使用虚拟环境是一种良好的实践。

 

Python中创建虚拟环境的方法有多种,以下是一些常见的方式:

  1. 使用 venv 模块(Python 3.3及以上版本):

    # 在项目目录中创建虚拟环境 python3 -m venv venv # 激活虚拟环境(Windows) venv\Scripts\activate # 激活虚拟环境(Linux/Mac) source venv/bin/activate

  2. 使用 virtualenv 模块:

    # 安装 virtualenv 工具 pip install virtualenv # 在项目目录中创建虚拟环境 virtualenv venv # 激活虚拟环境(Windows) venv\Scripts\activate # 激活虚拟环境(Linux/Mac) source venv/bin/activate

  3. 使用 Pipenv:

    # 安装 Pipenv pip install pipenv # 在项目目录中创建虚拟环境并安装依赖 pipenv install # 进入虚拟环境 shell pipenv shell

  4. 使用 conda:

    如果您使用的是 Anaconda 或 Miniconda,可以使用 conda 创建虚拟环境。

    # 创建一个名为myenv的虚拟环境 conda create --name myenv # 激活虚拟环境 conda activate myenv

  5. 使用 pyenv:

    pyenv 是一个Python版本管理工具,也可以用于创建虚拟环境。

    # 安装 pyenv-virtualenv 插件 git clone https://github.com/pyenv/pyenv-virtualenv.git $(pyenv root)/plugins/pyenv-virtualenv # 创建并激活虚拟环境 pyenv virtualenv 3.8.5 myenv pyenv activate myenv

  6. 使用poetry:

      如果您需要精确的版本控制和独立的虚拟环境,Poetry 是一个不错的选择

这些方法中,选择哪一种取决于您的项目需求和个人偏好。一般来说,推荐使用 venv(对于Python 3.3及以上版本)或者 Pipenv,因为它们提供了更简单的使用和更多的功能。如果您使用的是 Anaconda 或 Miniconda,conda 也是一个强大的选择。




注:当前文章会不定期进行更新。如果您对本文有更好的建议,有新资料推荐, 可以点击: 欢迎分享优秀网站
这个位置将来会放广告

我想等网站访问量多了,在这个位置放个广告。网站纯公益,但是用爱发电服务器也要钱啊 ----------狂奔的小蜗牛