我有一个Anaconda虚拟环境,其中多次安装了许多Python软件包,通常安装在不同版本中,例如:
$ conda list
...
singledispatch 3.4.0.3 py35_0
sip 4.18 py35_0
six 1.10.0 <pip>
six 1.11.0 <pip>
six 1.10.0 py35_0
snowballstemmer 1.2.1 py35_0
sockjs-tornado 1.0.3 py35_0
sphinx 1.5.4 py35_0
spyder 3.1.3 py35_0
sqlalchemy 1.1.9 py35_0
sqlite 3.13.0 0
statsmodels 0.8.0 np111py35_0
sympy 1.0 py35_0
tensorflow-gpu 1.3.0 <pip>
tensorflow-gpu 1.0.1 <pip>
tensorflow-tensorboard 0.1.6 <pip>
terminado 0.6 py35_0
testpath 0.3 py35_0
Theano 0.9.0 <pip>
tk 8.5.18 0
toolz 0.8.2 py35_0
tornado 4.4.2 py35_0
tqdm 4.11.2 <pip>
tqdm 4.15.0 py35_0
traitlets 4.3.2 py35_0
unicodecsv 0.14.1 py35_0
wcwidth 0.1.7 py35_0
werkzeug 0.12.1 py35_0
Werkzeug 0.12.2 <pip>
wheel 0.29.0 <pip>
wheel 0.30.0 <pip>
wheel 0.29.0 py35_0
...
我不知道如何达到这种状态,但是如何安全摆脱重复的包裹呢?
另外,如果程序导入了six
软件包,Python如何确定要导入的版本?
编辑:我现在知道问题的根源。我可能使用pip
的--ignore-installed
选项安装了一些软件包。我可以像这样安装所有重复项吗?还是应该摆脱它们?
如果您不需要其中任何一个的特定版本,那么我将尝试conda update conda
删除所有旧软件包,安装最新版本,并将最新版本设置为默认版本。否则,您始终可以使用conda remove <pkg-name>
删除所有副本并conda install <pkg-name>
安装最新版本并替换旧版本。您还可以使用pip install <pkg-name>==<version>
来安装特定版本(例如pip install keras==1.2
)。此链接也有帮助。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句