Python虚拟环境(二):Linux基于Anaconda创建虚拟环境并打包

1、创建并查看虚拟环境

1、创建虚拟环境
conda create -n py37 python3.7  # 创建一个名称为py37 的Python版本为3.7 的Python虚拟环境
#或
conda create -n py37 --copy y -q python=3.7 numpy pandas scipy  # 创建一个名称为py37 的Python环境, -copy 选项将对应的软件包都安装到该环境中,包括一些C的动态链接库文件。同时,下载numpy、pandas、scipy 三个依赖库到该环境中


2、查看已经创建的虚拟环境
conda env list

2、进入虚拟环境

conda activate py37        # 
# 进入虚拟环境之后,可以用conda 命令安装需要用到包,都会安装在该虚拟环境中,不会干扰到外面

3、将虚拟Python环境打包

创建好虚拟环境后,进入到环境所在的文件夹,例如环境是 /home/hadoop/anaconda3/envs, cd 到 envs 下,使用打包命令将当前目录下的文件打包成zip包:
cd /home/hadoop/anaconda3/envs    # /home/hadoop/anaconda3/ 路径为 anaconda安装路径, envs 为默认的虚拟环境保存路径
zip -r py37.zip py37

注:对于该包的用途,可以解决Pyspark环境加载虚拟python环境从而解决Pyspark环境未安装相关python包的情况,详情请参考pyspark 中使用集群未安装的python三方库:加载虚拟python环境

4、总结
对于工作中使用virtualenv还是借助Anaconda创建虚拟环境,要充分结合自己的任务需求:

  • 如果设计虚拟环境迁移或者需要打包加载到Pyspark任务中,则选用Anaconda创建的虚拟环境,但是该方式创建的虚拟环境打包后体积一般较大,即使没有安装太多的python包的情况下。
  • 如果是项目仅为了隔离不同开发环境并且python版本基本不变,则建议使用virtualenv创建虚拟环境,该方式简单。

:对于virtualenv创建的虚拟环境不能应用于Pyspark任务的虚拟python环境的原因参考pyspark 中使用集群未安装的python三方库:加载虚拟python环境

参考:

  • linux创建虚拟环境(python虚拟环境)
  • conda文档

你可能感兴趣的:(Python开发,python,linux,开发语言)