为什么新的Conda环境没有numpy之类的软件包?

时间:2018-10-04 13:53:19

标签: python package anaconda conda

我正在经历痛苦的​​过程,学习如何在Python / Anaconda中管理程序包/不同(虚拟)环境。有人告诉我Anaconda基本上是python安装,其中包含我需要的所有软件包(例如numpy,scipy,sci-kit学习等)。

但是,当我创建一个新环境时,这些软件包都不容易使用。在新创建的环境中使用PyCharm时,无法导入它们。当我检查Pycharm项目解释程序或anaconda导航器环境选项卡时,似乎确实没有这些软件包安装在我的新环境中。 为什么?提供所有这些软件包对我来说没有任何意义,但是在创建新环境时并没有使它们可供使用。我是否必须在新的环境中手动安装所有这些软件包,或者我缺少什么?

最诚挚的问候,谢谢。

4 个答案:

答案 0 :(得分:4)

Anaconda随附了可用的软件包,例如numpy,scipy和sci-kit Learn,但是如果要在环境中使用它们,则必须:

1)创建环境:

conda create --name new_env 

2)激活环境:

source activate new_env 

3)使用conda install

安装所需的软件包
conda install numpy

如果您想创建一个新环境,其中包括所有可用的Anaconda软件包的安装,请参见create anaconda python environment with all packages。您可以在要在环境中安装的软件包列表中包括anaconda,这是一个“元软件包”,意思是“ Anaconda安装随附的所有软件包”。

答案 1 :(得分:3)

我不了解“ conda”环境,但通常使用虚拟环境为您提供“独特”环境。这可能包括不同的程序包,不同的环境变量等。

制作一个新的虚拟环境的重点是要有一个单独的位置,您可以在其中安装项目所需的所有二进制文件(和其他资源)。 如果您的环境中有一些预安装的二进制文件,它是否违反了首先创建二进制文件的目的?

您可以创建多个环境这一事实有助于您分离一个人可能需要的二进制文件,而另一个人可能不需要。

例如,如果您要创建一个需要numpy:1.1但已安装numpy:2.1的项目,则必须对其进行更改。因此,基本上,通过不安装任何其他软件包,他们不会对您的项目要求进行假设。

答案 2 :(得分:2)

默认python不包含numpy的原因是因为您可能不想在该环境中使用numpy 。想象一下编写一个API(或通用软件包),您的用户可能会也可能无法访问numpy如果您的计算机上未安装numpy,则可能需要运行测试以确保软件正常运行或具有纯python后备功能。 Conda环境提供了这种(非常有用的)好处。当然,有问题的程序包不必numpy。还有更多深奥的软件包在这种类型的测试中很有用。

此外,您可以创建一个预安装numpy或要预安装的任何其他软件包的conda环境(只需将它们添加到conda create命令的末尾):

conda create --name my-env-name numpy

答案 3 :(得分:0)

您可以使用以下命令检查环境中的软件包:

  

conda列表

如果未列出软件包,则只​​需使用以下命令将其添加:

  

conda安装numpy