python 虚拟环境多种创建方式

【一】说明介绍

(1)什么是虚拟环境

  • 在Python中,虚拟环境(Virtual Environment)是一个独立的、隔离的Python运行环境,它拥有自己的Python解释器、第三方库和应用程序。通过创建虚拟环境,可以确保项目之间的依赖关系不会相互干扰,每个项目都可以使用自己独立的Python解释器和第三方库版本。

(2)虚拟环境的特点

  1. 隔离性:每个虚拟环境都是独立的,互不影响。这意味着在一个虚拟环境中安装的Python包不会影响其他虚拟环境或全局Python环境。
  2. 可定制性:可以根据项目的需求,为每个虚拟环境选择特定的Python版本和安装所需的第三方包。
  3. 可复制性:虚拟环境可以轻松地复制和迁移到其他机器上,确保在不同环境中的一致性。
  4. 易于管理:通过激活和停用虚拟环境,可以方便地切换到不同的Python项目环境。

【二】使用内置模块venv

(1)创建虚拟环境

  • 首先打开终端(cmd),移动到想要创建虚拟环境的目录下

image-20240511151205015

  • 创建一个专门管理虚拟环境的目录,进入到该文件内
mkdir Virtualenv
cd Virtualenv

image-20240511152457229

  • 创建虚拟环境
    • py -3.11 -m venv .venv 这条命令用于创建虚拟环境。
      • py: 这是Windows上Python解释器的简短命令。
      • -3.11: 指定虚拟环境的版本,这里指定为最新的python 3.11版本。
      • -m venv: 使用Python的-m选项来运行一个库模块作为脚本。在这里运行venv模块来创建虚拟环境。
      • .venv: 这是你想要创建的虚拟环境的目录名。点号(.)前缀表示这是一个隐藏目录,在文件资源管理器中默认情况下不可见(除非你设置了显示隐藏文件和文件夹)。使用隐藏目录来存放虚拟环境是一个好习惯,因为它可以让项目目录更加整洁。
py -3.11 -m venv .venv

(2)激活环境

  • 激活
.venv\Scripts\activate
  • 查看python
    • 退出是exit()或者crtl+z
  • 查看所有的包

image-20240511152915337

  • 退出当前虚拟环境
deactivate

image-20240511153016363

【三】使用第三方模块Virtualenv

(1)安装Virtualenv

  • Virtualenv是一个用于创建独立Python环境的第三方库。如果还没有安装它,可以使用pip来安装。
pip install virtualenv
或
pip3 install virtualenv
  • 增加模块,使虚拟环境在win上更好用
    • virtualenvwrapper-win是一个增强模块,使得在Windows上使用虚拟环境更方便。
    • 使用以下命令安装virtualenvwrapper-win
pip install virtualenvwrapper-win
或
pip3 install virtualenvwrapper-win

(2)编辑环境变量

  1. 直接在搜索框中搜索环境变量
  2. 新建系统变量
    1. 变量名是WORKON_HOME
    2. 变量值是你的统一管理虚拟环境的位置,我这里是
      • D:\Python\PythonProjects\Virtualenv
  3. 一直点击确定后保存退出

image-20240511153824099

(3)创建虚拟环境

  • 一旦你安装了virtualenv并(可选地)配置了环境变量,你就可以使用它来创建一个新的虚拟环境了。
mkvirtualenv 环境变量的名字
mkvirtualenv .testvenv
  • 如果想要指定Python解释器的版本,你可以使用-p选项
mkvirtualenv -p python3.10 .testvenv

image-20240511154953102

(4)使用虚拟环境

  • 查看已有的虚拟环境
    • 他会查看环境变量指定的位置下的所有虚拟环境
workon
  • 进入虚拟环境
  • 查看python
    • 退出:exit()ctrl+z
  • 查看pip包
  • 退出虚拟环境: deactivate

image-20240511155408291

image-20240511155633793

【四】使用Pycharm创建

  • 这是最简单的方式
    • 但是解释器需要是安装下载好的

image-20240511160413573

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/11996.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【刷题(2)】矩阵

一、矩阵问题基础 遍历: for i in range(len(matrix[0])): for j in range(len(matrix): while 倒序遍历: for i in range(right,left,-1) 临时存储:temp w,h:len(matrix[0])-1 len(matrix)-1 left,right,top,bottom:0 len(matrix[0])-1 0 l…

Cesium 3DTileset Style 原理简析

Cesium 3DTileset Style 原理简析 应用层会看到这样的使用。那么原理是什么, 为啥写 height, 除了这个还有啥? const tileset await Cesium.Cesium3DTileset.fromUrl("../../public/tileset/building/tileset.json"); tileset.style new Cesium.Cesium3DTileSty…

HarmonyOS应用模型Stage基本介绍

文章目录 <font colorcoral> HarmonyOS应用模型概况<font colorcoral> Stage模型基本概念<font colorcoral> Stage模型UIAbiliry的生命周期<font colorcoral> Stage模型的配置文件<font colorcoral> 写在后面的话<font colorcoral>Referen…

学校NTP时钟系统(时间同步系统)方案助力建设智慧校园

学校NTP时钟系统&#xff08;时间同步系统&#xff09;方案助力建设智慧校园 学校NTP时钟系统&#xff08;时间同步系统&#xff09;方案助力建设智慧校园 建设智慧校园也意味着校内网络设备和服务器剧增&#xff0c;如何保障智慧校园内各数字系统时序一致、维稳运行成为一大难…

【八大排序算法】插入排序、希尔排序、选择排序、堆排序、冒泡排序、快速排序、归并排序、计数排序

文章目录 一、排序的相关概念二、排序类型三、排序算法实现插入排序1.直接插入排序2.希尔排序 选择排序3.简单选择排序4.堆排序 交换排序5.冒泡排序6.快速排序递归实现非递归实现 7.归并排序递归实现非递归实现 8.计数排序 四、总结 一、排序的相关概念 排序&#xff1a;根据数…

WebLogic问题集

console登录后&#xff0c;页面显示卡顿 解决方法&#xff1a; 将Java的配置文件JAVA_HOME\jre\lib\securetty\java.security中的 securerandom.sourcefile:/dev/random修改为 securerandom.sourcefile:/dev/./random修改后&#xff0c;重启WLS即可。

【LAMMPS学习】八、基础知识(6.5)PyLammps 教程

8. 基础知识 此部分描述了如何使用 LAMMPS 为用户和开发人员执行各种任务。术语表页面还列出了 MD 术语&#xff0c;以及相应 LAMMPS 手册页的链接。 LAMMPS 源代码分发的 examples 目录中包含的示例输入脚本以及示例脚本页面上突出显示的示例输入脚本还展示了如何设置和运行各…

[JAVASE] 类和对象(二)

目录 一. 封装 1.1 面向对象的三大法宝 1.2 封装的基本定义与实现 二. 包 2.1 包的定义 2.2 包的作用 2.3 包的使用 2.3.1 导入类 2.3.2 导入静态方法 三. static 关键字 (重要) 3.1 static 的使用 (代码例子) 3.1.1 3.1.2 3.1.3 3.1.4 四. 总结 一. 封装 1.1 面向对象…

推荐网站(9)pixabay免费可商用的图片、视频、插画、矢量图、音乐

今天推荐一款可以免费可商用的图片、视频、插画、矢量图、音乐的资源网站&#xff0c;这里面的所以东西都是免费的&#xff0c;并且可以商用。对那些做视频剪辑的人来说帮助非常大。它里面的资源非常的丰富&#xff0c;质量也高。 比如搜索下雨 链接直达&#xff1a;https://pi…

遇到Docker容器无法上网的问题时如何排查

当遇到Docker容器无法上网的问题时&#xff0c;可以通过以下步骤排查和解决&#xff1a; 检查Docker容器的网络模式&#xff1a; 确认容器的网络模式是否符合您的需求&#xff0c;使用 docker inspect <container_id> 查看网络配置。 检查Docker守护进程和容器的日志&am…

如何安装在系统中安装make命令

文章目录 WindowsMacUbuntuCentOS/Red Hat make是系统比较基础的命令&#xff0c;一般会自己携带&#xff0c;如果没有就手动安装一下吧。 Windows 从官网下载 make.exe Make for Windows 官网首页&#xff1a;https://www.gnu.org/software/make/ 下载地址&#xff1a;htt…

IT行业的革新力量:技术进步与未来展望

在当今时代&#xff0c;信息技术&#xff08;IT&#xff09;行业无疑是全球经济的重要推动力之一。随着数字化转型的不断深入&#xff0c;IT行业的边界正在扩大&#xff0c;它不仅包括传统的软硬件开发、网络建设和运维服务&#xff0c;还涵盖了云计算、大数据、人工智能&#…

我希望未来十年,Java可以变成这样的

ava&#xff0c;这位编程界的常青树&#xff0c;自1995年问世以来&#xff0c;一直是全球开发者的宠儿。随着技术的飞速发展&#xff0c;Java也在持续地自我革新。接下来&#xff0c;让我们来聊聊&#xff0c;未来十年Java可能会有哪些令人兴奋的变化。&#xff08;最重要的一点…

常用的启发式算法:探索问题解决的智慧之道

启发式算法是一种通过启发式信息来引导搜索的算法&#xff0c;常用于解决那些在合理时间内难以找到最优解的问题。本文将介绍几种常用的启发式算法&#xff0c;包括贪心算法、遗传算法和模拟退火算法&#xff0c;并提供Java代码实现及测试&#xff0c;帮助读者深入理解这些算法…

android设计模式-单例模式

转&#xff1a;https://www.jianshu.com/p/9c32aea34b6d 单例模式是运用最广泛的设计模式之一&#xff0c;在应用这个模式时&#xff0c;单例模式的类必须保证只有一个实例存在。多用于整个程序只需要有一个实例&#xff0c;通常很消耗资源的类&#xff0c;比如线程池&#xf…

如何申请免费一年SSL证书

申请免费一年的SSL证书可以通过以下几个步骤进行&#xff0c;这里以JoySSL为例&#xff0c;因为它是目前提供此类服务的流行平台之一&#xff0c;同时也提到了宝塔面板中的TrustAsia SSL证书。请根据您的具体需求选择合适的方式&#xff1a; 申请免费一年SSL证书&#xff1a; …

2024年为什么很多电商商家,都想涌入视频号,究竟是什么原因?

大家好&#xff0c;我是电商糖果 对电商有了解的朋友&#xff0c;在今年肯定发现一个现象&#xff0c;那就是很多商家对视频号比较青睐。 视频号究竟有何魔力&#xff0c;让越来越多的商家都想要入驻。 其实很简单&#xff0c;它让商家看到了市场。 视频号背后是谁&#xf…

【Vue】Vue指令与生命周期以及组件化编码

目录 常用内置指令v-text与v-htmlv-text : 更新元素的 textContentv-html : 更新元素的 innerHTML注意&#xff1a;v-html有安全性问题&#xff01;&#xff01;&#xff01;&#xff01; v-once与v-prev-oncev-pre ref与v-cloakrefv-cloak 自定义指令案例定义语法配置对象中常…

两数相加 - (LeetCode)

前言 今天无意间看到LeetCode的一道“两数相加”的算法题&#xff0c;第一次接触链表ListNode&#xff0c;ListNode结构如下&#xff1a; public class ListNode {int val;ListNode next;ListNode() {}ListNode(int val) {this.val val;}ListNode(int val, ListNode next) {…

使用openssl生成自签名证书

使用openssl生成自签名证书 1. 交互式生成2. 一步生成参考 1. 交互式生成 自签名 SSL 证书的生成涉及一个简单的 3 步过程&#xff1a; 步骤 1&#xff1a;创建服务器私钥 openssl genrsa -out cert.key 2048步骤 2&#xff1a;创建证书签名请求 (CSR) openssl req -new -k…