python虚拟环境安装

server/2024/10/23 4:10:03/

python__0">python 虚拟环境安装

目录

      • python 虚拟环境安装
        • 0.前言
        • 1.虚拟环境的意义
        • 2.Python 虚拟环境的创建方法
        • 3.总结

0.前言

在 Python 项目中,使用虚拟环境是管理项目依赖和隔离开发环境的最佳实践。它可以避免不同项目之间的依赖冲突,同时确保项目在开发、测试、部署过程中使用的是一致的 Python 版本和依赖库。以下是关于虚拟环境的意义和创建方法的详细介绍。

1.虚拟环境的意义
  1. 依赖隔离:
  • 不同的项目可能依赖不同版本的库。例如,项目A依赖 Django 2.2,而项目B可能依赖 Django 3.1。如果不使用虚拟环境,将无法在同一个系统中同时安装这两种版本的 Django。这会导致项目之间的依赖冲突。而虚拟环境可以为每个项目创建一个独立的 Python 环境,解决这一问题。
  1. 避免全局污染:
  • 在没有虚拟环境的情况下,所有的 Python 包都会安装在全局环境中。如果在全局环境中安装了大量不同版本的库,维护起来会非常混乱。而虚拟环境将项目的依赖库局限在项目目录内,避免了对系统全局环境的污染。
  1. 保证项目的可移植性
  • 使用虚拟环境可以让项目的环境配置更加一致,并且方便其他开发人员在不同的机器上复现相同的环境。通过 requirements.txt 或 Pipfile,其他开发人员可以快速搭建与原项目相同的开发环境。
  1. 支持多版本 Python
  • 在同一台机器上可以运行多个版本的 Python,而虚拟环境允许你为每个项目指定不同的 Python 版本。这样,你可以在不改变系统 Python 版本的情况下,使用最新的 Python 版本来测试和开发新项目。
2.Python 虚拟环境的创建方法

Python 提供多种创建和管理虚拟环境的方法。常用的方式包括使用 venv 模块和 virtualenv 工具。

  1. 使用 venv 模块(Python 3.x 内置模块)

venv 是 Python 3.x 版本中的内置模块,无需安装额外工具。它提供了基本的虚拟环境功能,适合大多数场景。

a. 创建虚拟环境

  • 首先,进入你的项目目录,然后运行以下命令
 # venv 是虚拟目录的名称,可以根据需要更改目录python3 -m venv venv

b.激活虚拟环境

 # 激活source venv/bin/activate

c.安装依赖包

现在,你可以在虚拟环境中使用 pip 安装项目所需的依赖包。它们会被安装到虚拟环境的 venv 目录中,而不会影响全局的 Python 环境。

 # eg:pip install requests

d.生成依赖文件

通过以下命令可以生成项目当前的依赖列表文件 requirements.txt,方便其他开发人员复现环境:

pip freeze > requirements.txt

e.退出虚拟环境

如果你想退出虚拟环境,可以运行以下命令deactivate

f.重新进入虚拟环境

以后如果需要重新进入虚拟环境,执行以下命令即可:

source venv/bin/activate
  1. 使用 Pipenv 模块(现代化的 Python 包管理工具)

Pipenv 是一种更现代的工具,用于管理 Python 项目的包依赖和虚拟环境。它结合了 pip 和 virtualenv 的功能,并且通过 Pipfile 和 Pipfile.lock 来管理依赖关系。

a. 安装 Pipenv

 pip install pipenv

使用 Pipenv 创建虚拟环境

 pipenv install --python 3.9

Pipenv 会自动创建虚拟环境并管理依赖

3.总结
  • 虚拟环境的意义在于为每个项目提供独立的 Python 解释器和依赖管理,避免项目之间的冲突
  • 创建虚拟环境的方法包括使用 Python 自带的 venv 模块对于现代项目管理,还可以使用 Pipenv 进行更好的依赖管理。

虚拟环境是确保 Python 项目开发顺利进行的重要工具,强烈建议在每个项目中使用。


http://www.ppmy.cn/server/134068.html

相关文章

npm配置阿里镜像库教程

为了配置npm使用阿里镜像库,可以按照以下步骤进行操作。这些步骤将帮助你加快包的下载速度,特别是在中国地区,因为阿里镜像库通常比官方npm仓库响应更快。 1. 配置全局镜像 可以通过运行以下命令来将npm的全局镜像配置为阿里镜像&#xff1…

兰迪·舍克曼担任生命银行链(LBC)顾问,赋能基因数据技术发展

兰迪舍克曼(Randy Schekman)作为生命银行链(Life Bank Chain, LBC)的顾问参与其中,这无疑是个令人兴奋的消息!他在生理医学和基因研究方面拥有深厚的专业知识,必将对LBC的使命,即安全…

告别装机烦恼,IT小白到IT大神都在用的免费神器

作为USB启动盘制作工具中的佼佼者,Rufus凭借其卓越的性能和实用性,赢得了众多用户的信赖。这款精巧的实用程序不仅能够将系统ISO镜像完美转换为可引导的USB安装介质,还提供了全面的USB设备管理功能。 Rufus的安装包仅有1.5M大小,…

Java程序设计:spring boot(7)——数据访问操作

目录 1 查询操作 1.1 接口方法定义 1.2 映射文件配置 1.3 UserService 1.4 UserController 2 添加操作 2.1 接口方式定义 2.2 映射文件配置 2.3 添加 commons-lang3 依赖 2.4 AssertUtil ⼯具类 2.5 ParamsException ⾃定义异常 2.6 UserService 2.7 ResultInfo …

【NS3】一、安装

qt - Missing Didn’t find: Qt version 5; install it from packages, or download from https://info.qt.io/download-qt-for-application-development Try: “sudo apt-get install qt5-dev-tools libqt5-dev”, if you have sudo rights. sudo apt-get install qt5-defaul…

实现Shell免密登录的详细指南

实现Shell免密登录的详细指南 前提条件步骤一:生成SSH密钥对步骤二:将公钥复制到远程服务器步骤三:配置SSH客户端(可选)步骤四:测试免密登录常见问题排查 在使用Linux或Unix系统时,我们经常需要…

强化学习案例:美团是如何在推荐系统中落地强化学习

目录 美团的强化学习应用场景和分析 场景举例 使用原因 强化学习的六大要素 智能体 环境 行动 奖励 目标 状态 美团强化学习模型设计 美团强化学习工程落地 总体的数据结构关系图 实现步骤 1. 日志收集与实时处理(Log Collector, Online Joiner&…

无极低码课程【redis windows下服务注册密码修改】

下载Windows版本的Redis linux环境 (自行下载) 1.打开官网https://redis.io/downloads/ windows环境 1.打开github https://github.com/microsoftarchive/redis/releases 然后选择你喜欢的版本zip或msi下载 2.这里下载zip版,解压后后,打开安装目录 3.双击redis-server…