我正在处理一些旧的Python代码。多亏了this great answer的帮助,我才能够编写一个conda
调用,该调用可以正确执行,并有望包含运行代码所需的所有软件包:
conda install IPython scipy numpy PIL scikit-image matplotlib tensorflow keras
但是,现在conda
告诉我
The following packages will be DOWNGRADED:
certifi 2018.11.29-py36_0 --> 2018.11.29-py27_0
pip 19.0.3-py36_0 --> 19.0.3-py27_0
python 3.6.8-haf84260_0 --> 2.7.15-h8f8e585_6
setuptools 40.8.0-py36_0 --> 40.8.0-py27_0
wheel 0.33.1-py36_0 --> 0.33.1-py27_0
什么事?! Python 2.7.15?没门。另外,项目README包含“指令”以使用Python 3.6运行代码,因此,理论上 代码应该与Python 3.6兼容。是否有办法准确了解哪个软件包和/或软件包组合导致了降级?
在您这么说之前,我知道我可以一次安装一个软件包,然后看看哪个是罪魁祸首。但是conda
文档特别警告不要一次在一个环境中安装所需的软件包:
同时安装此环境中所需的所有程序。一次安装1个程序可能会导致依赖关系冲突。
PS conda install
命令的输出实际上比我在这里包括的要长得多。我只复制了DOWNGRADE
部分,因为它是困扰我的唯一部分,但是当然,如果您愿意,我可以包括完整的多页输出。