python人工智能教程——虚拟环境以及包的管理

简介

在对人工智能的学习中,我们往往会用到python标准库中没有的包。那么如何下载包,管理包成了我们的一个问题。不用担心,本篇文章将为大家介绍如何去操作。

使用Anaconda管理虚拟环境

相信搜到这篇文章的朋友已经安装完Anaconda和pycharm了,如果还未安装,可自行csdn一下。

什么是虚拟环境

什么是虚拟环境?我为大家举一个例子。一个python项目A需要某个包的1.0版本,但你不满足于做一个项目,同时又做了一个python项目B,但是这个项目B需要同样包的2.0版本,这就导致了冲突。我们总不能做项目A时降版本,做项目B时升版本吧。于是人们便提出了一种用于存放包的容器——虚拟环境(virtual environment)。而Anaconda就是一个包和环境的管理器,其中含有超过7500个开源包,为我们提供了强大的后盾。

启动命令行

首先,我们按下键盘上的Win键和R键,调出运行框,并在其中输入“cmd”。
在这里插入图片描述
按下确定后,我们黑色的命令行就调出来了。
在这里插入图片描述

创建新的虚拟环境

现在,我们创建一个名为newenv(new environment的缩写)的虚拟环境。当然,环境的名字可以按自己的想法起。这里后面加了一句关于环境中python版本的语句,规定了python的版本为3.9。大家也可自行选择。

conda create --name newenv python=3.9

按下回车键后,如下所示。
在这里插入图片描述
这里它询问我们是否进行(Proceed)我们按下y(yes)和回车
在这里插入图片描述
等进度条跑完,我们的环境就创建好了,Anaconda还贴心地为我们安装了一些基础的包管理工具。

管理虚拟环境

安装完后我们发现咋什么都没发生。听我说,你先别急。如果我们想对创建的虚拟环境进行操作,我们需要先激活它。因为默认情况下我们是在基础环境中的。于是我们输入:

conda env list

按下回车键后,如下所示。
在这里插入图片描述
这句话的意思是显示我们系统中所有的虚拟环境,可以看到我有一些以前就已经创建了的虚拟环境。

我们想要激活新创建的环境newenv,我们可以输入:

activate newenv

按下回车键后,如下所示。
在这里插入图片描述
可以看到左面变化了,多出来一个(newenv),说明我们进入了newenv环境,接下来我们所有的操作都是在这个环境里运行的。

如果我们想看环境中有那些包,可以输入:

扫描二维码关注公众号,回复: 14715493 查看本文章
conda list

按下回车键后,如下所示。
在这里插入图片描述
可以看见Anaconda帮我们安装了一些基础包。

如果我们想要退出这个虚拟环境了,我们可以输入:

deactivate

按下回车键后,如下所示。
在这里插入图片描述
可以看到,我们退出了当前环境。

如果我们不喜欢这个虚拟环境了,喜新厌旧了,我们就要删除它。输入:

conda remove -n newenv --all

newenv的位置就是我们要删除的环境的名字。
按下回车键后,如下所示。
在这里插入图片描述
和往常一样,它很礼貌地问了我们是否继续进行。我们输入y并按下回车。
再次查询当前系统下的虚拟环境,我们发现newenv已经不存在了。
在这里插入图片描述

使用pip下载包

我们创建好虚拟环境后,就可以在激活环境的情况下在环境内安装包了。假设我们现在需要安装numpy包,我们使用pip工具来安装包,输入:

pip install numpy

按下回车后即可开始安装。但是这种情况下我们有可能会安装失败,因为它默认使用的是国外的服务器。我们可以通过更换镜像源来切换到国内的服务器:

pip install numpy -i https://pypi.douban.com/simple/

或者是

pip install -i https://pypi.douban.com/simple/ numpy

这里我们更换到的是国内的豆瓣源,当然,还有其他镜像源供我们使用。

清华大学 :https://pypi.tuna.tsinghua.edu.cn/simple/

这两个都是比较好用的源,如果大家需要使用其他源,再自行csdn即可。

按下回车键后,如下所示。
在这里插入图片描述
报错了?不要慌,让我们看看它说了什么。

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.
ERROR: pip的依赖项解析器目前没有考虑到已安装的所有包。此行为是以下依赖关系冲突的根源。

这里提到了“依赖”这个概念,实际上,包与包之间也是有依赖关系的。使用A包的x版本你也必须得安装B包的y版本。由此可见建立虚拟环境的重要性。

我们只需要将它要求我们安装的包一五一十地安装就行了, 如:

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple  " google-auth<3,>=1.6.3"

按下回车键后,如下所示。在这里插入图片描述
之后比着葫芦画瓢把剩余的依赖包都安装好就行了。

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple  "google-auth<3,>=1.6.3"
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple  "grpcio>=1.24.3"
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple  "markdown>=2.6.8"
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple  "protobuf<3.20,>=3.9.2"
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple  "typing-extensions>=3.6.2.1"
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple  "matplotlib>=2.1.0"
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple  "flatbuffers"
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple  "protobuf<=3.20.1,>=3.12.2"
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple  "typing-extensions>=3.6.2.1"
pip install -i https://pypi.douban.com/simple/ "werkzeug>=1.0.1"

接着我们查看一下环境中的包:
在这里插入图片描述
可以看到numpy以及一些依赖包已经安装进虚拟环境了。

使用pip卸载包

这就很简单了,比如我们想把numpy删除,如下输入:

pip uninstall numpy

按下回车键后,如下所示。
在这里插入图片描述
我们再次查看一下环境中的包,可以看到numpy已经被删除了。

最后

Anaconda中conda的语句以及pip的语句不止这些,如果大家有其他需求如升级包,搜索包等,可以自行在csdn上搜索。
请添加图片描述

猜你喜欢

转载自blog.csdn.net/qq_51226542/article/details/127214692
今日推荐