我在用最新版 pycharm 的时候, 配置了 anaconda3, 但默认还要新建 virtualenv. 但新建之后, 里面的 python3 环境是完全干净的, 并没有 anacaonda 的那些科学计算库, 那为什么 anaconda3 还需要使用 virtualenv 呢?有什么好处吗?
我在用最新版 pycharm 的时候, 配置了 anaconda3, 但默认还要新建 virtualenv. 但新建之后, 里面的 python3 环境是完全干净的, 并没有 anacaonda 的那些科学计算库, 那为什么 anaconda3 还需要使用 virtualenv 呢?有什么好处吗?
1
hu6360567 Jul 22, 2018 via Android
你说的是 condaenv 还是 virtualenv ?
|
3
ddzzhen Jul 22, 2018 via Android
环境配置没有选好路径,不用管自动新建的那个
|
4
bucky Jul 22, 2018
anaconda 和 virtualenv 两个没关系,anaconda 功能更多一些,也包括创建虚拟环境
|
5
est Jul 22, 2018
anaconda3 是一个母仓库,用 venv 建立多个平行的子工作环境。
|
6
kingcos Jul 22, 2018 via iPhone
两个没关系吧,Pycharm 能选择的
|
7
zhusimaji Jul 22, 2018 via iPhone
虚拟环境和 anaconda 没啥关系,我以前用 anaconda2.7 后来项目全部使用 3.6 所以我直接新建个个虚拟环境方便快捷
|
8
dartabe Jul 22, 2018
同样被这几个东西绕晕了 网上也没找到太简洁的答案
|
9
xiaozizayang Jul 22, 2018
你可以这样想也这样用,但用 env 的目的是在一个 anaconda 大的版本下建立力度更小的虚拟环境
比如 10 个项目依赖 py3.6,你不用用 anaconda 建立十个 py3.6 版本项目环境,你可以只用建立一个 py36 的环境,然后基于这个 3.6 版本建立十个虚拟环境,比如使用 pipenv 进行管理 |
10
xiaozizayang Jul 22, 2018
@est 你说得对
|
11
darouwan OP @est 这个我知道,但是用 virtualenv 新建的仓库是空的,没有 anaconda 的那些包, 这样使用 anaconda 的意义何在呢?
|
13
darouwan OP @xiaozizayang 但是这小的虚拟环境, 我看并没有继承 anaconda 的包, 既然这样, 为何不直接用干净的 python 呢
|
15
ayang23 Jul 22, 2018
你们的 anaconda 可以建 virtualenv ?我试了好多次都不可以
|
16
bucky Jul 22, 2018
@darouwan 大哥,都说了这两个没关系,anaconda 的好处是不仅能创建虚拟环境,还能创建不同版本( 2,3 )的 python 虚拟环境,同时 windows 下有些包用 anaconda 更加容易安装,创建虚拟环境用下面的命令
conda create -n your_env_name python=X.X(2.7、3.6 等) |
17
xyfan Jul 22, 2018
按我的理解,anaconda 里面集成了许多常用的包,这些包很常用,并且相互可能有依赖,如果都自己安装要花很多时间,所以给你了一个集成各种常用包的安装文件,基本不需要自己 pip 或 conda 了,当作科学计算的环境。env 是 pycharm 默认配置的,pycharm 写可能给别人用的项目,自然包越少越好,这样拿到其他环境可以确定只需要某某几个包就能正常运行,而不是说我电脑上有几百个包,你全装一遍肯定能运行。
你要是用 jupyter,spyder,vscode 都不会让你新建虚拟环境。 |
18
ilotuo Jul 22, 2018
我的理解是
virtualenv 用来创建最小环境. 只带标准库. 不同环境是不同容器. 不同环境安装的软件互相版本独立. pyenv 能用 virtualenv 创建环境, 并指定解释器版本. conda 同 pyenv, 能指定解释器. 是用 virtualenv 创建的环境, 并在此环境安装好科学计算库. |
19
sw0rd3n Jul 22, 2018
刚装好 conda 手贱 rm 删了...
|
21
bucky Jul 24, 2018 via Android
@darouwan 对呀,Python 创建虚拟环境的方法太多了,而且多多少少都有点问题,用 anaconda 最统一,最省心,不管 win 还是 Linux 下都没有问题,同时在 win 下安装包的时候用 anaconda 比 pip 安装要好一些,pip 有时候会安装失败,所以使用 anaconda,学习 conda 命令是最划算的,否则那么多创建虚拟环境的工具,别说用了,就是选择用哪个都要花费你不少时间,最近好像又出了新的工具。anaconda 还有 minianaconda 这个版本,不用科学计算,安装这个就可以,小很多,好像几十兆吧
|