2015-12-04 38 views
0

我需要使用Python3.x才能解決以下與cPickle相關的錯誤。這項任務需要儘快完成。如何使用Python3.5以解決Python2.7 bug與cPickle?

我遇到了以下錯誤使用cPickle與Python 2.7.10。事實上,這是其只與Python3.x

http://bugs.python.org/issue11564

所以,我安裝了Python3.5解決的錯誤。現在,腳本不能運行,因爲我沒有爲Python3安裝模塊,例如

 import matplotlib.pyplot as plt 
ImportError: No module named 'matplotlib 

用戶應該如何開始下載Python 2.7中安裝的所有模塊到Python 3.5?

+0

使用'pip'爲3.5安裝軟件包,或者,如果您在Windows上並運行python.org版本的Python(即不是Anaconda或其他),則可以從[here]下載預編譯的軟件包( http://www.lfd.uci.edu/~gohlke/pythonlibs/)。你**不能**只是將你的'site-packages'目錄從2.7複製到3.5,你必須重新安裝新的東西。 – MattDMo

+0

您的第一個問題「用戶應該如何開始使用Python2.7和Python 3.5?」是如此寬泛以至於幾乎荒謬,我不知道你在問什麼,所以我把它留在我的答案中。 – ShadowRanger

回答

1

pip freeze可以完成從一個Python安裝到另一個安裝的鏡像包安裝的工作。

假設pip安裝用於Python的兩個版本(我們將其命名爲pip2pip3,您可能需要使用合格的路徑每個取決於操作系統和配置),你只是做:

pip2 freeze > requirements.txt 
pip3 install -r requirements.txt 

這將爲Py3安裝中安裝在Py2安裝下的每個軟件包安裝相同的軟件包和版本。查看pip freeze docs開關調整輸出。我相信你也可以刪除==x.y.z部分的每個要求,如果你想要最新的版本,而不是相同的版本。