Conda虚拟环境创建与Python模块安装

  • 下面咱们来聊一下conda虚拟环境,首先说一下我们去使用conda虚拟环境的必要性,那企业很多时候我们会面对同时开发多个项目,那这些项目很有可能会使用不同的Python环境来去运行啊,那这里面有的Python环境可能是需要3.5的Python,有的Python环境它需要3.6的版本,有的Python环境它可能需要3.7的版本等等的,那这个时候我们就通过创建不同版本的这个Python到虚拟环境里面,然后去给不同的项目啊提供它所需要的一个运行环境,那有的人说,那如果我们都是同一个版本的Python呢,我们的多个项目只需要同一个版本的Python呢?那这个时候我们去创建conda虚拟环境,是不是没必要了?其实也是很有必要的,因为你可能有的项目用的比如说pytorch去来开发的,有的项目比如说用的是testflow来去开发的,那不同的框架,它对于底层的这个Python包的依赖,或者说对于底层的一些库的依赖,它是不一样的,那这个时候它很有可能会起冲突。那我们如果是不同的项目,使用同一个环境啊,那这里面呢,我们如果这个有的项目使用pytorch,那我们需要去安装pytorch,那有的时候我们需要去就是有的项目我们需要在这个环境里面去使用testflow,我们再安装testflow,那有可能他在安装testflow的时候就把pytorch配套所需要的一些依赖给更新了,那回头再去跑的时候,很有可能就跑不起来啊,所以说这里面咱们最好是给它隔离开啊,这样的话呢,就相当于各回各家,各找各妈,这样的话,我们的项目呢,即使你后面再有一些新的项目需要更新版本的环境,那你前面的一些老的项目呢,也能去找到它自己的环境来去跑起来
  • 当我们去创建一个虚拟环境的时候,它的本质实际上是给你创建了一个文件夹,。miniconda是安装到这个路径下面的,然后它会在这个路径下面的envs这个虚拟环境,就是这个envs这个文件夹下面啊,然后给我们创建一个叫my_first_envs的这样一个文件夹啊,它本质是创建这样一个文件夹,然后里面会安装一些内容
  • 可以通过conda info,然后去查看你的虚拟环境会安装到什么地方
  • 我们可以通过conda env list罗列出我们已有的所有虚拟环境
  • 切换到了虚拟环境里面后,这个时候我们可以通过conda list罗列出这个当前环境中所安装过的程序, 也可以通过pip list查看当前环境中所有Python模块,这和conda list稍微有一点点区别,这个conda list会罗列出这个环境下面所有的Python模块,以及非Python的一些小程序,那pip list它仅仅会罗列出Python这个模块啊,所以说你看到pip list这边跟conda list这边所罗列出的内容相比啊,稍微会少一些
  • 那接下来咱们去说这个安装Python模块,咱们有了这个虚拟环境,那咱们肯定希望在虚拟环境里面去安装一些Python模块给我们的项目去来进行使用嘛,那咱讲两种方式,第一种方式呢,叫做pip install,pip install就是通过pip这个小工具来去安装我们的Python模块。那为了后面下载速度更快,我们可以第一步,首先配置下镜像啊,那这个东西怎么做呢?我们可以进入到家目录啊,对于Windows来说,这个家目录就在C盘用户名下,所以叫做家目录。在这个下面我们按照鼠标右键去创建一个文件夹,然后把这个文件夹起个名字叫做pip,然后我们在这个文件夹下面去新建一个文本,然后我们把文本文件的名称给它改写成pip.ini, 然后以记事本的形式打开,再把下面的文本粘贴到pip.ini中,然后保存就ok了, 配置好了镜像之后,就可以通过使用国内的镜像然后pip来快速的去安装模块了, 后面安装模块的时候就会去找到清华镜像源的链接,然后去进行下载,如果你下载过,它就会找到之前的这个缓存的文件啊,然后它就会给你默认下载当前Python环境下面最新的对应最新的可用的模块的一个版本

[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple
[install]
trusted-host = pypi.tuna.tsinghua.edu.cn

如果您管理Python模块及其依赖项,建议使用conda,它是一个流行的开源软件包管理器和环境管理器,用于Python及其他语言。

以下是使用conda安装模块及其依赖项的一般步骤:

  1. 安装conda:访问Anaconda官方网站(https://www.anaconda.com/products/individual)或Miniconda官方网站(https://docs.conda.io/en/latest/miniconda.html),下载适用于您操作系统的适当版本,并按照说明进行安装。

  2. 创建环境(可选):为了隔离不同项目的依赖项,您可以创建一个独立的环境。使用以下命令创建一个新的环境:

    conda create --name <环境名称>  python==<python解释器版本号>
    

    <环境名称> 替换为您希望创建的环境的名称。

  3. 激活环境(如果创建了环境):如果您创建了一个新的环境,在执行任何命令之前需要激活该环境。使用以下命令激活环境:

    conda activate <环境名称>
    

    退出虚拟环境可以使用conda deactivate命令

    <环境名称> 替换为您创建的环境的名称。

  4. 安装模块及其依赖项:使用以下命令安装所需的模块及其依赖项:

    conda install <模块名称>
    

    <模块名称> 替换为您要安装的模块的名称。Conda将自动解析并安装所需的依赖项。

  5. 验证安装:安装完成后,您可以通过在命令行中运行Python解释器并尝试导入安装的模块来验证安装是否成功。

    python
    >>> import <模块名称>
    

    <模块名称> 替换为您刚刚安装的模块的名称。

使用conda管理模块及其依赖项可以更好地管理Python环境,并且可以更方便地处理复杂的依赖关系。


  • 第一种pip install XX

注意事项
①安装模块时,会自动安装或更新所需要的依赖模块,以匹配当前安装模块的版本
②pip卸载模块时,只会卸载当前指定的模块(那我们通过pip卸载模块时,只会卸载当前指定的模块,就是说你安装的时候,可能你为了安装某一个模块,它给你顺带手安装一些依赖模块,这个时候你卸载这一个模块的时候那些之前安装的依赖模块,不会被卸载)

  • 第二种conda install XX
    • 第一步:配置镜像
      • 用户家目录下创建文件.condarc,注意这是个隐藏文件,需要让文件夹显示隐藏的项目
      • 我们可以通过conda install来去进行安装,那conda install去安装的时候,它所找的这个下载的这个地址,和pip不太一样,我们可以先去配置这个conda的镜像,跟配置pip安装镜像差不多,都是在目录下去创建一个文件,这个文件叫做.condarc,那注意这个地方是个隐藏文件,如果我们想要看见它,我们需要让文件夹显示这个隐藏文件,到这个系统下面把这个隐藏的目录按钮给它打上勾, 然后以记事本的形式去打开,把下面的文本粘贴到里面,然后保存,重启Anconda prompt就ok了
channels:
  - defaults
show_channel_urls: true
default_channels:
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2
custom_channels:
  conda-forge: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  msys2: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  bioconda: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  menpo: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  pytorch: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  pytorch-lts: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  simpleitk: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud

注意事项

①安装的模块,所需的依赖模块,不仅仅是python模块,建议使用conda
②conda卸载模块时,会将当前模块,以及以当前模块为依赖的所有模块统统卸载

  • 第三种:Jupyter
    1. 在虚拟环境中首先安装pip install ipykernel
    2. 回到base环境, 将环境写入notebook的kernel中
      • python -m ipykernel install --user --name 环境名称 --display-name 在Jupyter中想要显示的环境名称

总结

因为conda,它可以管理Python模块和一些不是Python的一些库,所以如果你要安装的这个Python模块,它有一些依赖模块,这些依赖模块或者说依赖的程序,它不仅仅是Python模块,那我们就建议使用康来去进行安装,当然这种情况并不多。conda的卸载模块时,会将当前模块以及当前模块依赖的所有模块通通卸载,也就是说你卸载当前这个模块的时候,如果其他的一些模块用到你当前要去卸载这个模块,那其他的模块也会卸载,因为你卸载这个模块,其他模块如果依赖它,那其他模块就没法被用了嘛,conda就会自动帮你去卸载啊,那如果是pip的话,那它只会去管你当前这一个模块,其他的只会给你警告,就卸载完之后给你警告说其他锁定的依赖没有了,那你就需要自己再去处理,所以这边谈不上是pip好还是conda,用熟都可以,只不过conda,它不仅仅安装Python的模块,还可以安装一些其他的,比如说C语言写的一些library库,如果你的Python模块有依赖,有用到的话就可以使用conda包管理工具

你可能感兴趣的:(科学计算与可视化,conda,python,开发语言)