• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

python虚拟环境的概念,配置和操作pycharm为例

武飞扬头像
工科狗Niko
帮助1

一、虚拟环境的由来和概念

1.在PyCharm中创建python项目时,需要配置python的运行环境,除了使用系统现有环境以外,还可以创建虚拟环境。

2.虚拟环境的创建是因为在实际开发中需要同期用到不同版本的python解释器,不同的第三方库以及同一个第三方库的不同版本。因此需要创建虚拟环境将项目环境与其他环境(系统环境、其他虚拟环境)隔离。

3.如果入门学习,可以先不设置虚拟环境,使用系统环境。

4.PyCharm中虚拟环境的创建有三种方式,virtualen、conda和pipen。
学新通
5.virtualen可以想象成是将当前系统环境创建一个隔离副本,使用的解释器和你安装
的是同一个(复印件); conda是根据你的需要,选择特定的python版本,然后从网上下载相关版本,并创建一个与系统环境不一样的新的环境,使用的解释器也和你安装的不是同一个; pipen和virtualen类似,也是在现有系统环境的基础上创建一个副本,但是pipen使用Pipfile替代virtualen的requirements.txt来进行依赖管理,更加方便。
学新通
上面第一个勾选是继承全局的包
第二个勾选是让该环境可以继续应用于其他项目

二、常用配置操作

win R,输入cmd回车进入命令行

切换盘符:

//进入d盘
D:
//进入F盘
F:

对目录的其他操作:

cd /?     //获取使用帮助

cd \       //跳转到硬盘的根目录

cd C:\WINDOWS  //跳转到当前硬盘的其他文件

d:        //跳转到其他硬盘

cd /d e:\software    //跳转到其他硬盘的其他文件夹,注意此处必须加/d参数。否则无法跳转。

cd..      //跳转到上一层目录

conda和pip管理包的常用操作

conda list //显示当前装有的依赖包

conda env list //显示当前装有的虚拟环境列表

conda activate xxx //进入xxx环境,后面打*号的是目前在的环境

pip show bayesian-optimization //查看bayesian-optimization的当前版本

pip show -f bayesian-optimization  //使用这个命令会输出 bayesian-optimization 包的所有信息,包括文件路径、依赖关系等。

pip install -U package_name  //pip更新package_name包

三、进一步理解以及用我遇到的问题实例分析

以下ppt来自https://www.bilibili.com/video/BV1qE411u7N7,直观地解释了虚拟环境各种概念的关系
学新通
学新通学新通

另外一个操作教学视频https://www.bilibili.com/video/BV1V7411n7CM
学新通

遇到过的问题

如果都装在同个虚拟环境下,版本会冲突,pip会自动卸载旧版本,装载当前包需要的版本,比如我就碰到过
学新通
ERROR: pip's dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts. torchvision 0.9.0 requires torch==1.8.0, but you have torch 1.13.1 which is incompatible. torchaudio 0.8.0 requires torch==1.8.0, but you have torch 1.13.1 which is incompatible. nevergrad 0.4.2.post5 requires bayesian-optimization>=1.2.0, but you have bayesian-optimization 1.1.0 which is incompatible.

这就是说,torchvision 0.9.0 需要 torch1.8.0,但是环境下安装的是 torch 1.13.1,所以这两个包之间存在不兼容的依赖。同样,torchaudio 0.8.0 也需要 torch1.8.0,但是环境下安装的是 torch 1.13.1,所以这两个包之间也存在不兼容的依赖。此外,nevergrad 0.4.2.post5 需要 bayesian-optimization>=1.2.0,但是安装的是 bayesian-optimization 1.1.0,所以它们之间也存在不兼容的依赖。

学新通
环境变量是从头开始查找,找到后就直接运行,
而虚拟环境终端的环境变量多了︰/虚拟环境路径/Scripts
这就导致终端先查到找虚拟环境的python,然后直接运行
python.exe(解释器)的位置定下来了,虚拟环境就定下来了

项目移植方法

项目移植到新计算机中时,可以从虚拟环境中导出某一个虚拟环境下下的所有包
学新通

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanhghaiag
系列文章
更多 icon
同类精品
更多 icon
继续加载