Pycharm中的Virtualenv Environment、Conda Environment

版本一

Conda Environment该不该选?

先说结论,该选,而且还是正解。前提是你打算"用Anaconda来管理各种Python环境,同时管理Python下面的各种包"。

选了Conda Environment意味着什么?

意味着你以后如果要装新的包的话,在Pycharm里install一个包就实质上直接装到了Anaconda下。我们知道,Anaconda是可以在envs下来同时装多个不同版本的Python来实现管理的,假如你现在在Anaconda Prompt的命令行用conda create -n environment_name python一=X.x命令创建了一个pythonX.X的新虚拟环境,再通过Pycharm对你的项目使用了这个环境,然后安装新的包后,就只会在你的这个Anaconda-envs的虚拟环境下出现这个包,而对其他的任何环境没有影响。

这种情况下,不论是通过Pycharm安装还是在Anaconda prompt下安装新的包,都是等价的。即在Anaconda prompt下安装后会同步到Pycharm使用该环境的项目里,通过Pycharm安装也会自动把包装到Anaconda对应环境的文件夹下。

何时选Virtualenv Environment?会怎样

Pycharm会自动为你选择的python.exe创建一个虚拟环境。是不是感觉有点熟悉?对的,Anaconda也是附带这个效果的,只不过Anaconda的虚拟环境物理上位于envs文件夹下(base环境除外);

Pycharm创建的虚拟环境,是在你的一个先前或现在的项目下;以后想用Anaconda prompt安装新的包时,不会在Pycharm的项目里同步。同理,在Pycharm里安装的新包,即使我当初解释器选择的就是Anaconda下的python.exe。这正是Virtualenv Environment的意义所在——虚拟一个独立的环境,在此之中进行的任何安装新包、卸载旧包操作与先前无关。当然,如果你直接在如上图所示的D:\PycharmProjects\myFirstPythonProject\venv下导入新的包,那确实会同步到Pycharm里。

与一般只安装了python和Pycharm的相比,多了Anaconda的大量基础包。
其实就用不上Anaconda的虚拟环境了,你现在就已经是在建立虚拟环境了。

版本二

说一下Virtualenv Environment和Conda Environment。网上其实有很多资料了,找了两天,我还是没看明白Virtualenv Environment和Conda Environment的区别到底在哪里。后来觉得也不用太纠结这个问题,先会用,满足学习和工作的需要就行,这才是工具最大的意义。后面在使用中一定会遇到很多坑,自己一点一点总结就可以了。

简单说,Virtualenv Environment使项目拥有独立的Python环境,各项目之间不会因为版本依赖、库依赖受到影响。

选择Conda Enviroment,项目文件夹会在Anaconda下面,独立于系统解释器的版本环境,会继承Anaconda下所有的包。

仅是自己学习的话,选择Virtualenv Environment或者Conda Enviroment都可。

总结

我以前创建项目都是在Virtualenv 下创建解析器,这个时候最好用conda install或者pip去安装包,因为如果用pycharm中的加号全装不会同步到环境中。(个人理解)

猜你喜欢

转载自blog.csdn.net/qq_44537267/article/details/129310111