最近我经常问自己这个问题,因为我最近切换到使用conda环境(Anaconda),但是我最终只找到了一些Google上的资料。
现在我在它们各自的conda环境中运行所有项目,因为我喜欢保持一切分离,并尽可能少地依赖其他程序。例如,最近的一个环境:
conda create -n RL numpy tensorflow-gpu
然后我激活环境,意识到“哦——我忘记安装gym了”。在这种情况下,只能通过PIP软件包管理器获得,所以我只需键入
pip install gym
即可。但在其他情况下,如果该软件包同时存在于conda和pip中,最佳安装方法是什么?
conda install 包名
pip install 包名
换句话说,两者有何区别?为了提供完整的信息,我在Ubuntu 16.04上运行所有程序,并根据项目使用Python 2和3。因此,我的某些conda环境使用Python 2,而另一些则使用Python 3。我发现有时需要使用
pip3 install
来安装Python 3,但并非总是如此-这是为什么?其次,我的路径链接到Anaconda3目录中的Python设置。
我的当前想法是,如果我通过
conda
安装,它会直接安装到我的环境中,但如果通过pip
安装,则会安装到我的anaconda3 site-packages中,使它可用于Anaconda3目录下所有conda环境。如果是这样,这意味着如果我在一个conda环境中pip install gym
,它也应该在其他所有环境中可用,但根据我所知,这不是环境的预期行为。请随时纠正我的假设,让我清醒一些!