一:Conda-pcak在什么情况下使用:
二:conda常见的使用指令:
1:查看自己conda管理有几种python环境:
2:创建一个新的python环境:
3:对已经存在的python环境进行复制:
4:切换到对应的python环境:
三:打包某个python环境
1:进行python环境打包:
2:传输这个压缩文件py3666.tar.gz到你所需要的服务器上:
3:解压缩py366.tar.gz:
4:激活环境:
特别强调的问题:
移植python环境一般用于一下几种情况:
1:别人要运行你的代码,但是没有你的python环境,如果要一个一个python包进行安装,则非常麻烦,并且有时候还安装出现问题。
2:有一个包始终安装不上,但是在你的另一个python环境下有,或者在别人的环境中存在,这个时候就可以将python环境打包,移植到你的电脑上,然后激活该环境,运行对应的项目。
在我初期学习时,总是有包安装不上,或者就是不通的项目需要不通的环境,但是也总不能在一个环境下运行所有项目,这里面牵扯到python版本和各种包的版本的问题,是在令人头疼,耐心看完这篇文章,你会对python环境的管理有一个熟练且清楚的掌握。
conda info –envs
可以看到,我的服务器下conda管理了3个环境(base, py3.8, py36)
conda create -n py3.8 python=3.8
Py3.8是新创建的python环境的名字,python=3.8是环境的版本
conda create -n py3.8_0 –clone py3.8
Py3.8_0是复制后的python环境的名字,py3.8是需要复制的python环境的名字
conda activate base
可以看到, 我之前是在py3.8python环境中,现在切换到了base环境中。
在打包之前如果没有conda-pack包的话,需要安装pip install conda-pack
conda pack -n py36 -o py366.tar.gz
Py36是需要打包的已存在的python环境,py366.tar.gz是我们打包后压缩包的名称
可以看到我们将py36打包,然后当前目录下出现了一个py366.tar.gz的压缩包
这里我是有两台linux服务器,我自己使用的是windows平台,使用xftp先从第一个服务器上把压缩包传输到windows上,然后再传输到另一个服务器的anaconda下的envs目录下,也就是/root/software/anaconda3/envs。
创建文件:py366,因为我们是要将压缩文件解压到py3666中,这个创建的名字到时候就是你的虚拟python环境的名字。
mkdir py366
解压缩:
tar -zxvf py366.tar.gz -C py366
conda activate py366
可以看到此时我们anaconda3/envs目录下的文件。
这种python环境打包,只能在通一种操作系统中进行,比如你在windows平台上安装的anaconoda,打包anaconda中的python环境到linux服务器中,这样的是用不了的,我之前不知道,进行了这样的尝试,还以为出现了错误,我们可以看下面图片就明白了。
左边的是windows下的anaconda/envs下的py36环境下的文件,而右边是linux下的anaconda3/envs下的py37环境下的文件,可以看到两个是不一样的,这也就说明了两种系统的python环境是不能这样操作的。