关于python:安装anaconda软件包的特定BUILD

Installing specific BUILD of an anaconda package

有什么方法可以在Anaconda中安装特定版本的软件包? Stack Overflow帖子" anaconda / conda-安装特定的软件包版本"显示了如何安装特定版本的软件包。但是请看下面-有几个4.2.1版本的枕头包装,上面带有" py27"前缀。

背景:我正在摸索以了解" conda搜索"输出的含义。例如,在我的安装中,conda search pillow给出:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
pillow                       2.1.0                    py26_0  defaults
...
                          *  3.3.1                    py27_0  defaults        
                             3.3.1                    py34_0  defaults        
                             3.3.1                    py35_0  defaults        
....
                             4.2.1                    py27_0  defaults        
                             4.2.1                    py35_0  defaults        
                             4.2.1                    py36_0  defaults        
                             4.2.1            py27h7cd2321_0  defaults        
                             4.2.1            py35h03abc04_0  defaults        
                             4.2.1            py36h9119f52_0  defaults        
                             4.3.0            py35h550890c_1  defaults        
                             4.3.0            py27h353bd0c_1  defaults        
                             4.3.0            py36h6f462bf_1  defaults

我了解2.1.0、3.3.1等(版本号)的含义。但是py27_0defaults是什么意思?更令人费解的是像py27h7cd2321_0这样的尾随十六进制数字的新出现。经过研究后:

https://www.anaconda.com/blog/developer-blog/package-better-conda-build-3/

告诉我,这是对程序包的特定内部版本进行编码的新方法。

回到我的问题:考虑到我仍然在Python2.7行Python上,当我们执行conda install时如何选择py27_0构建而不是另一个构建(py27h7cd2321_0)?


带有py27_0的列是用于python的构建/版本。 defaults列表示它属于哪个Anaconda通道。 不同的用户或组织可以拥有自己的频道,但是默认频道为defaults,另一个受欢迎的频道为conda-forge

从该信息中安装任何特定版本的方式是:

1
conda install pillow=4.2.1=py27h7cd2321_0

哪种格式

1
conda install <package_name>=<version>=<build_string>

如果要选择哪个通道(否则默认选择defaults):

1
conda install -c <channel> <package_name>=<version>=<build_string>