<svg xmlns="http://www.w3.org/2000/svg" style="display: none;"> <path stroke-linecap="round" d="M5,0 0,2.5 5,5z" id="raphael-marker-block" style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);"></path> </svg>
讯享网
一般我们往往会在一个主机上运行多个由别人写的项目,而别人写的项目所用的开发环境又有很大的不同,比如A项目用的是Python3.6,B项目用的是Python3.7。很多时候一个项目必须在特定的环境下才能运行,而我们又不能每次运行一个项目,就把原来的环境给卸载掉,那样就太麻烦了。而且配环境这个过程其实也并不轻松。而且多个项目也不能并行运行,基于此,出现了Anaconda,一个环境管理工具,可以利用Anaconda来管理多个环境,也就是说在一台主机上,同时具有多个环境。每次运行一个新项目就新建一个虚拟环境即可,这样就能轻松解决上述问题。
执行下面的指令,即可看到系统存在的虚拟环境。在安装Anaconda后,会默认有一个名叫base的环境。
讯享网
这条指令也可以看到各个环境的安装位置信息。默认状况下:在用户.condaenvs目录下存放环境

讯享网
比如创建一个以test命名的Python环境,执行下面命令:
- n是name的简称,python的版本是3.7,也可以是其他版本
- 如果不特别指定路径,虚拟环境会默认安装在C盘,如果不想安装在C盘,也可以指定安装位置(但是我的电脑用其他博客讲述的方法并没有实践成功)
- 亲测可以使用如下方法来将虚拟环境创建在其他位置
- 注意:一定要使用pip来安装pytorch,如果用conda的话,容易出现cuda不可用的情况
讯享网
创建好虚拟环境以后,如何进入该虚拟环境?
在命令行窗口输入以下指令进入该虚拟环境test。该指令的字面意思是使用conda的方法激活activate环境test

讯享网
当我们去复现项目的时候,或者批量将项目运行在多个主机时,为了方便进行环境部署,最好能一键部署。就能大大减轻工作量,因为环境配置这个工作是很繁琐的。接下来我将用一个例子来演示。
假设我在虚拟环境1上运行了一个项目1,导出项目所用的环境,然后在虚拟环境2上导入该环境,并部署项目1
- 进入虚拟环境1
- 切换到项目根目录
- 执行下面的指令,导出环境。requirements.txt的格式大概如下图所示
讯享网
- requirements.txt的格式大概如下图所示

- 切换到虚拟环境2
- 将requirements.txt文件放到项目2的根目录下
- 执行下面的命令,导入环境。然后就会自动配置环境
注意这个方法,在安装pytorch的时候默认安装的cpu版本
首先切换到该环境下,具体方法看上文
讯享网
一般在安装Anaconda后,在创建虚拟环境的时候,会默认安装一些必要的包
pip/conda install 包名,比如安装numpy包

如果要安装指定版本的包:pip install 包名==版本号
,比如查看numpy包的版本

- pip/conda install –upgrade <包名>:升级指定的Python包。
- pip/conda install –upgrade <包名>==<版本号>:升级到指定版本的Python包
比如将numpy包升级到1.24.3版本
讯享网
pip install 包名
conda remove 包名称
pip和conda都是包管理工具,大多数情况下,二者区别不大。pip是Python官方指定的包管理工具,也可以理解为一种特殊的包,一般会默认安装。有时候如果pip命令安装失败,也可能是pip版本过低导致,可以尝试升级pip版本重新安装。一般情况下,如果是默认下载源,使用pip命令下载包会从官方指定的仓库PYPI下载,如果因为国内网速原因下载速度过慢,也可以变更下载源,比如将国外PYPI仓库改为国内的清华或阿里云等镜像下载地址。具体更改下载源的方法可以在网上搜索,很容易搜到。而conda指令所下载的包来源于Anaconda仓库,这是由Anaconda公司维护的一个官方软件包仓库,包含了大量的常用Python包。conda会优先从Anaconda仓库下载包,如果在该仓库中找不到对应的包,才会从其他仓库下载。我个人更多的时候用pip。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/161603.html