Python:conda install 和pip install的区别
pip是个安装包的软件,conda是个环境管理的工具。conda能够安装多个python解释器,pip不行。因此conda在实际开发中是主要用来隔离不同的python版本和Tensorflow&Pytorch的环境(env)的。
一般Python可分为系统自带的和在conda中安装的。我们可以用下列命令查看本机上所有可用的Python环境:
(base) orion-orion@MacBook-Pro /usr % python -m site
sys.path = [
'/usr',
'/Users/orion-orion/miniforge3/lib/python39.zip',
'/Users/orion-orion/miniforge3/lib/python3.9',
'/Users/orion-orion/miniforge3/lib/python3.9/lib-dynload',
'/Users/orion-orion/miniforge3/lib/python3.9/site-packages',
]
USER_BASE: '/Users/orion-orion/.local' (exists)
USER_SITE: '/Users/orion-orion/.local/lib/python3.9/site-packages' (doesn't exist)
ENABLE_USER_SITE: True
然后我们再说两种方式:
conda install xxx:这种方式安装的库都会放在/Users/orion-orion/miniforge3/pkgs
目录下。这样的好处是,当在某个环境下已经下载好了某个库,再在另一个环境中还需要这个库时,就可以直接从pkgs目录下将该库复制至新环境而不用重复下载。
pip install xxx:这是就要两种情况,一种情况就是此时使用的是conda中安装的python,那么xxx会被安装到/Users/orion-orion/miniforge3/lib/python3.9/site-packages
文件夹中;如果当前用的是系统的python,那么xxx会通常会被安装到/Users/orion-orion/.local/lib/python3.9/site-packages
文件夹中
下面我们来看下conda中的python环境。我们可以用命令conda info --env
来查看当前的所有conda环境:
(base) orion-orion@MacBook-Pro miniforge3 % conda info --env
# conda environments:
#
base * /Users/orion-orion/miniforge3
这里我们只有初始的base环境,即/Users/orion-orion/miniforge3
目录,此环境中Python的安装目录为:
/Users/orion-orion/miniforge3/lib/python3.9
而该Python版本对应的包的目录为:
/Users/orion-orion/miniforge3/lib/python3.9/site-packages
可以看到,这个目录下即我们所安装的Python包:
(base) orion-orion@MacBook-Pro site-packages % ls |grep torch
torch
torch-1.8.0.dist-info
torch_tb_profiler
torch_tb_profiler-0.3.1.dist-info
torchtext
torchtext-0.6.0.dist-info
torchvision
torchvision-0.9.0a0.dist-info
参考
- [1] https://www.zhihu.com/question/395145313