环境:windows10 Anaconda
python一般有两种包管理工具:conda 和 pip
在Anaconda中,两者都可以使用。但是对于初次接触的人,对于其环境与python包的管理和作用范围及方法,会比较困惑。
首先,安装Anaconda,记得加环境变量:https://www.cnblogs.com/jpfss/p/8608204.html
总结论
- Anaconda env互相独立,pip和conda的依赖包都不互通。
- 在添加环境变量的情况下,直接用cmd可以理解为使用的是base env。
如果有多环境的需求,建议创建不同的env。在env中进行pip和conda的包管理
如果没有多环境需求,直接拿CMD操作即可
实验验证
打开Anaconda Navigator可以看到环境,可以在这里进行创建。
下面将用实际用例来验证作用范围和方法。并不需要跟着做,目的只是讲明依赖包的作用范围。
事先准备
cmd中直接 pip 安装 chardet: pip install chardet
(自带的,但是新建环境中没有这个包)
创建pytorch环境,安装pytorch:conda install pytorch torchvision cpuonly -c pytorch
创建tensorflow2环境,安装tensorflow:conda install tensorflow
CMD与anaconda env
- 直接运行语句,比如
python
,此时使用环境变量Path中的python依赖包和脚本命令。
python
>>>import chardet
成功
>>>import torch
no module named 'torch' - 进入pytorch环境:
activate pytorch
python
>>>import chardet
no module named 'chardet'
>>>import torch
成功
结论
cmd中使用的依赖包和Anaconda env中的依赖包互相独立。
Anaconda env之间
- activate tensorflow2
python
import tensorflow as tf
print(tf.__version__)
'>>>2.0.0'
import torch
'no module name torch'
- activate torch
python
import tensorflow as tf
'no module named tensorflow'
import torch
成功
结论
Anaconda env之间的依赖包互相独立。
网友评论