❤️觉得内容不错的话,欢迎点赞收藏加关注,后续会继续输入更多优质内容❤️

使用conda进行python环境管理

Anaconda、conda、pip、virtualenv的区别

(1)Anaconda

Anaconda是一个包含180+的科学包及其依赖项的发行版本。其包含的科学包包括:conda, numpy, scipy, ipython notebook等。

(2)conda

conda是包及其依赖项和环境的管理工具。
适用语言:Python, R, Ruby, Lua, Scala, Java, JavaScript, C/C++, FORTRAN。
适用平台:Windows, macOS, Linux
用途

① 快速安装、运行和升级包及其依赖项。
② 在计算机中便捷地创建、保存、加载和切换环境。

如果你需要的包要求不同版本的Python,你无需切换到不同的环境,因为conda同样是一个环境管理器。仅需要几条命令,你可以创建一个完全独立的环境来运行不同的Python版本,同时继续在你常规的环境中使用你常用的Python版本。——Conda官方网站

▪ conda为Python项目而创造,但可适用于上述的多种语言。
▪ conda包和环境管理器包含于Anaconda的所有版本当中。

(3)pip

pip是用于安装和管理软件包的包管理器。
pip编写语言:Python。
Python中默认安装的版本

① Python 2.7.9及后续版本:默认安装,命令为 pip
② Python 3.4及后续版本:默认安装,命令为 pip3

pip名称的由来:pip采用的是递归缩写进行命名的。其名字被普遍认为来源于2处:

① “Pip installs Packages”(“pip安装包”)
② “Pip installs Python”(“pip安装Python”)

(4)virtualenv

virtualenv是用于创建一个独立的Python环境的工具。
解决问题
当一个程序需要使用Python 2.7版本,而另一个程序需要使用Python 3.6版本,如何同时使用这两个程序?如果将所有程序都安装在系统下的默认路径,如:/usr/lib/python2.7/site-packages,当不小心升级了本不该升级的程序时,将会对其他的程序造成影响。
如果想要安装程序并在程序运行时对其库或库的版本进行修改,都会导致程序的中断。
在共享主机时,无法在全局 site-packages 目录中安装包。
▪ virtualenv将会为它自己的安装目录创建一个环境,这并不与其他virtualenv环境共享库;同时也可以选择性地不连接已安装的全局库。

(5)pip 与 conda 比较

依赖项检查
▪ pip:

① 不一定会展示所需其他依赖包。
② 安装包时或许会直接忽略依赖项而安装,仅在结果中提示错误。

▪ conda:

① 列出所需其他依赖包。
② 安装包时自动安装其依赖项。
③ 可以便捷地在包的不同版本中自由切换。

环境管理

▪ pip:维护多个环境难度较大。
▪ conda:比较方便地在不同环境之间进行切换,环境管理较为简单。

对系统自带Python的影响

▪ pip:在系统自带Python中包的更新/回退版本/卸载将影响其他程序。
▪ conda:不会影响系统自带Python。

适用语言

▪ pip:仅适用于Python。
▪ conda:适用于Python, R, Ruby, Lua, Scala, Java, JavaScript, C/C++, FORTRAN。

(6)conda与pip、virtualenv的关系

conda结合了pip和virtualenv的功能。

使用conda进行python环境管理

(1)创建虚拟环境

创建环境

首先创建一个环境名称为test,python版本号为3.8的虚拟环境,如下所示:

conda create --name [环境名称] python=[python版本号,如3.6、3.7、3.8、3.9、3.10]
例如:
conda create --name test python=3.8
输出如下:
(base) 用户名@主机名:~# conda create --name test python=3.8
Collecting package metadata (current_repodata.json): done
Solving environment: done                                                                                                                                                                 ## Package Plan ##environment location: /root/anaconda3/envs/testadded / updated specs:- python=3.8The following packages will be downloaded:package                    |            build---------------------------|-----------------certifi-2022.9.24          |   py38h06a4308_0         154 KBlibffi-3.4.2               |       h6a678d5_6         136 KBpip-22.2.2                 |   py38h06a4308_0         2.3 MBpython-3.8.15              |       h7a1cb2a_2        20.1 MBsetuptools-65.5.0          |   py38h06a4308_0         1.1 MB------------------------------------------------------------Total:        23.8 MBThe following NEW packages will be INSTALLED:_libgcc_mutex      pkgs/main/linux-64::_libgcc_mutex-0.1-main _openmp_mutex      pkgs/main/linux-64::_openmp_mutex-5.1-1_gnu ca-certificates    pkgs/main/linux-64::ca-certificates-2022.10.11-h06a4308_0 certifi            pkgs/main/linux-64::certifi-2022.9.24-py38h06a4308_0 ld_impl_linux-64   pkgs/main/linux-64::ld_impl_linux-64-2.38-h1181459_1 libffi             pkgs/main/linux-64::libffi-3.4.2-h6a678d5_6 libgcc-ng          pkgs/main/linux-64::libgcc-ng-11.2.0-h1234567_1 libgomp            pkgs/main/linux-64::libgomp-11.2.0-h1234567_1 libstdcxx-ng       pkgs/main/linux-64::libstdcxx-ng-11.2.0-h1234567_1 ncurses            pkgs/main/linux-64::ncurses-6.3-h5eee18b_3 openssl            pkgs/main/linux-64::openssl-1.1.1s-h7f8727e_0 pip                pkgs/main/linux-64::pip-22.2.2-py38h06a4308_0 python             pkgs/main/linux-64::python-3.8.15-h7a1cb2a_2 readline           pkgs/main/linux-64::readline-8.2-h5eee18b_0 setuptools         pkgs/main/linux-64::setuptools-65.5.0-py38h06a4308_0 sqlite             pkgs/main/linux-64::sqlite-3.40.0-h5082296_0 tk                 pkgs/main/linux-64::tk-8.6.12-h1ccaba5_0 wheel              pkgs/main/noarch::wheel-0.37.1-pyhd3eb1b0_0 xz                 pkgs/main/linux-64::xz-5.2.8-h5eee18b_0 zlib               pkgs/main/linux-64::zlib-1.2.13-h5eee18b_0 Proceed ([y]/n)? yDownloading and Extracting PackagesPreparing transaction: done
Verifying transaction: done
Executing transaction: done
#
# To activate this environment, use
#
#     $ conda activate test
#
# To deactivate an active environment, use
#
#     $ conda deactivate
激活环境

然后激活该环节
使用如下命令:

conda activate test
输出如下:
(base) 用户名@主机名:~# conda activate test
(test) 用户名@主机名:~#
查看环境

使用pip list或者conda list查看环境

pip list
conda list
输出如下:
(test) 用户名@主机名:~# pip list
Package    Version
---------- ---------
certifi    2022.9.24
pip        22.2.2
setuptools 65.5.0
wheel      0.37.1
(test) 用户名@主机名:~# conda list
# packages in environment at /root/anaconda3/envs/test:
#
# Name                    Version                   Build  Channel
_libgcc_mutex             0.1                        main
_openmp_mutex             5.1                       1_gnu
ca-certificates           2022.10.11           h06a4308_0
certifi                   2022.9.24        py38h06a4308_0
ld_impl_linux-64          2.38                 h1181459_1
libffi                    3.4.2                h6a678d5_6
libgcc-ng                 11.2.0               h1234567_1
libgomp                   11.2.0               h1234567_1
libstdcxx-ng              11.2.0               h1234567_1
ncurses                   6.3                  h5eee18b_3
openssl                   1.1.1s               h7f8727e_0
pip                       22.2.2           py38h06a4308_0
python                    3.8.15               h7a1cb2a_2
readline                  8.2                  h5eee18b_0
setuptools                65.5.0           py38h06a4308_0
sqlite                    3.40.0               h5082296_0
tk                        8.6.12               h1ccaba5_0
wheel                     0.37.1             pyhd3eb1b0_0
xz                        5.2.8                h5eee18b_0
zlib                      1.2.13               h5eee18b_0

使用conda info --envs查看环境

(test) 用户名@主机名:~# conda  info --envs
# conda environments:
#
base                     /root/anaconda3
test                  *  /root/anaconda3/envs/test
退出环境
conda deactivate

(2)生成此环境对应的jupyter lab选项卡;

安装ipykernel

使用pip安装ipykernel

pip install ipykernel
安装jupyter menus
python -m ipykernel install --user --name [环境名称] --display-name "[展示名称]"
例如:
python -m ipykernel install --user --name test --display-name "Test"
测试使用的kernel的位置

在jupyter notebook或者jupyter lab中选择Test kernel,输入下面代码,看看是否是环境的安装路径

import sys
print (sys.executable)

参考文献

[1] anaconda https://baike.baidu.com/item/anaconda/20407441
https://www.anaconda.com
[2] 初学 Python 者自学 Anaconda 的正确姿势是什么?https://zhuanlan.zhihu.com/p/32925500
[3] Anaconda介绍、安装及使用教程 https://zhuanlan.zhihu.com/p/32925500
[4] conda常用命令汇总 https://blog.csdn.net/raelum/article/details/125109819
[5] Conda介绍 https://blog.csdn.net/koflance/article/details/78582737
[6] 用conda进行python虚拟环境创建、管理以及jupyter和pycharm使用此环境 https://zhuanlan.zhihu.com/p/64100305


❤️觉得内容不错的话,欢迎点赞收藏加关注,后续会继续输入更多优质内容❤️

使用conda进行python环境管理相关推荐

  1. 使用conda安装python包

    什么是conda? Python, R, Scala, Java, Javascript, C/ C++, FORTRAN 的包.依赖.环境管理应用. http://conda.pydata.org/ ...

  2. 安装conda搭建python环境(保姆级教程)

    目录 一.Anaconda简介 二.Anaconda安装 2.1 Anaconda下载 2.2 Anaconda安装 2.3 配置环境变量 三.通过conda配置python环境 3.1 创建并激活虚 ...

  3. conda创建python虚拟环境常用指令和流程

    conda--非常强大的工具,也是一个可执行命令,其核心功能是包管理和环境管理. 包管理与pip的使用方法类似,环境管理则是允许用户方便滴安装不同版本的python环境并在不同环境之间快速地切换. 1 ...

  4. Python环境管理:Andaconda安装使用

    安装 macOS平台安装 官方安装文件下载 官方网站下载安装有两种方式,一种是从pkg文件安装,一种是从.sh脚本文件安装.第2种方式与brew安装方式一样. Python 3.8 PKG文件: 64 ...

  5. 运用conda管理python环境

    多项目的场景中,若不做好环境管理/所有项目使用同一个环境开发(学习python的新手可能会这样),后果将是毁灭性的,因此我们需要对每个人/每个python项目做好环境管理,在此分享一些我使用canda ...

  6. 写文章 使用conda管理python环境

    使用conda管理python环境 转载于:https://www.cnblogs.com/1995hxt/p/7968916.html

  7. conda设置Python虚拟环境 其他配置

    文章目录 一.conda设置Python虚拟环境 查看已建好的环境 创建虚拟环境 克隆虚拟环境 激活与退出新环境 Conda更改清华镜像源 pip更改镜像源 将虚拟环境安装到指定路径 删除虚拟环境 二 ...

  8. conda配置python混合开发环境一站式入门【全平台】

    下载安装 清华的镜像 [https://mirror.tuna.tsinghua.edu.cn/help/anaconda/] 官方说明 [http://conda.pydata.org/docs/u ...

  9. THCudaCheck FAIL file=/opt/conda/conda-bld/python/pytorch/work/aten/src/THC/THCCachingHostAllocator.

    各位大佬好,我想跑YOLOV5,用极链云租了个实例, 按照帮助文档:https://cloud.videojj.com/help/.配置好了环境,pycharm deployment也配置成功了,可以 ...

最新文章

  1. 【转载】Linux修改文件权限
  2. C#的多线程(2)——机制探索
  3. 爬虫 spider02——详析http
  4. CentOS7 最小化安装后的必备操作
  5. vue根据指令动态改变title名字
  6. java ee junit_JavaEE——Junit
  7. English trip -- MC(情景课)3 C Do you have a sister?
  8. internet explorer 无法打开 Internet站点 已中止操作
  9. WebService之Axis2快速入门(2): 传递复合类型的数据
  10. 万用表的使用方法 (图解)
  11. java jsp聊天系统_jsp 在线客服聊天源码(websocket)
  12. 四分位数计算方法总结
  13. 服务器不能用pe安装win7系统安装,使用PE安装win7系统失败了怎么办
  14. prisma使用mongodb副本集群报错引发的一些列问题
  15. 【NLP】第 1 章 语言处理和 Python
  16. Latex中BibTex编辑参考文献
  17. 如何下载企业微信上课直播回放
  18. css动画实现跳动的小人
  19. Linux驱动调试之修改系统时钟中断定位系统僵死问题
  20. windows安全警报怎么关闭_10月23日,鄂州华容进行防空警报鸣放,请不要惊慌!...

热门文章

  1. 深度学习--解决模型过拟合的问题
  2. java实现中英文按拼音排序
  3. wince植入胎压监测_【折腾】小菲wince车载导航功能扩展
  4. 移动端用户放大字体导致样式出问题
  5. android 各国时区
  6. mp3计算机无法识别,MP3\MP4连接windows电脑后无法识别怎么办
  7. exchange邮箱一直提示密码错误,密码是正确的,求大佬解答
  8. 证券投资深度学习_基于风险中性的深度学习选股策略
  9. OPPOR8107_官方线刷包_救砖包_解账户锁
  10. 洪水攻击程序c语言,洪水攻击原理及代码实现全攻略(附源代码)