2014-10-29 54 views
3

我想用matplotlib繪製幾張圖,我有一臺windows機器首先我需要安裝,所以我從http://matplotlib.org/downloads.html下載文件。那麼,當我試圖運行時,它會彈出一個消息,說它未能在註冊表中找到3.4版本。這有點奇怪,因爲我的Python版本是3.4.1。numpy python 3.4.1:在註冊表中找不到Python 3.4

當然,我通過論壇搜索。我碰巧看到numpy python 3.4.1 installation: Python 3.4 not found in registry這與我的問題相同。但我的第一個問題:

1)matplotlib的官方頁面給了我一個直接的鏈接來安裝Python的3.4版本的Windows「.exe」。如果這是真的,那麼爲什麼這個問題應該首先發生。

2)我的第二個問題是,如何才能真正找到下載包版本是否與本地PC上安裝的當前python版本匹配。

回答

4

窗戶.exe安裝程序應該對給定的Python安裝的所有子版本的工作,這意味着,如果你使用的3.4安裝它應該3.4.03.4.13.4.2工作。

您需要檢查您使用的是32位還是64位安裝程序的正確版本。安裝程序應該與您使用的Python版本相匹配,可能與您的系統版本匹配或不匹配。這就是說,如果你有一個64位系統並使用32位Python,你應該使用32位安裝程序。

如果它仍然不起作用,我建議你重新安裝Python並再試一次,有可能是某些東西與你的註冊表設置混淆了。

本來我認爲子版本是重要的,但實際上並不是。我提出了matplotlib here的一個問題,由維護.exe安裝的Christoph Gohlke糾正。

順便說一句(有人讀這在未來你知道你的),如果你需要找到你的當前Python版本則只需在命令行中鍵入python -V,它會返回的細節,比如我的回報:

的Python 3.4.0

+0

很好解釋。謝謝。那麼,如果你查看鏈接http://matplotlib.org/downloads.html,你會發現最新的穩定版本。在Windows下的這一部分,你還會發現,** matplotlib-1.4.2.win-amd64-py3.4.exe **。據我所知,** matplotlib **是版本1.4.2,支持任何版本的Python系列** 3.4 **,就像它可能是** 3.4.0 **,** 3.4.1 **,** 3.4.2 **。是對的嗎? – 2014-10-29 16:38:21

+0

+1你說得對。感謝您在github上發佈這個問題。現在將我的Python升級到3.4.2 :)謝謝 – 2014-10-29 16:44:21

+0

在我看來,這似乎是安裝程序而不是matplotlib本身的問題。針對3.4.0構建的matplotlib應該與3.4.1二進制兼容。最有可能的是,安裝程序需要修復而不是修補bugfix版本的差異。 – 2014-10-29 17:13:19

1

我有這個問題,Python3.4.2回去,做了重新安裝。這次我關注了我正在做的事情。在安裝Python3.4.2(或2.7)時會彈出一個選項列表。選項列表中的最後一項是「將Python添加到路徑」。在我的安裝中,此選項標有X,我假設它是在第一次安裝。我刪除了X並繼續安裝Python。當我安裝numpy時,它在註冊表中找到了Python並加載了好的。

2

我在python 3.4.3上安裝matplotlib-1.4.3.win-amd64-py3.4.exe時出現同樣的問題:在註冊表中找不到3.4版本。在HKEY_LOCAL_MACHINE\SOFTWARE\的註冊表中看不到Python密鑰,所以matplotlib是正確的。

更多搜索我發現此SO文章Installing SetupTools on 64-bit Windows提供了一個註冊表腳本來爲Python 2.7添加必要的密鑰。我修改了腳本3.4並將鍵添加到註冊表中。安裝matplotlib然後成功完成。當我安裝Python 3.4.3(安裝註冊表項的子安裝程序在用戶特權級別被調用??)時,似乎註冊表項沒有被添加。

我使用的修改的註冊表項文件。將其保存到擴展名爲.reg的文本文件。

Windows Registry Editor Version 5.00 
[HKEY_LOCAL_MACHINE\SOFTWARE\Python] 
[HKEY_LOCAL_MACHINE\SOFTWARE\Python\PythonCore] 
[HKEY_LOCAL_MACHINE\SOFTWARE\Python\PythonCore\3.4] 
[HKEY_LOCAL_MACHINE\SOFTWARE\Python\PythonCore\3.4\Help] 
[HKEY_LOCAL_MACHINE\SOFTWARE\Python\PythonCore\3.4\Help\Main Python Documentation] 
@="C:\\Python34\\Doc\\python343.chm" 
[HKEY_LOCAL_MACHINE\SOFTWARE\Python\PythonCore\3.4\InstallPath] 
@="C:\\Python34\\" 
[HKEY_LOCAL_MACHINE\SOFTWARE\Python\PythonCore\3.4\InstallPath\InstallGroup] 
@="Python 3.4" 
[HKEY_LOCAL_MACHINE\SOFTWARE\Python\PythonCore\3.4\Modules] 
[HKEY_LOCAL_MACHINE\SOFTWARE\Python\PythonCore\3.4\PythonPath] 
@="C:\\Python34\\Lib;C:\\Python34\\DLLs;C:\\Python34\\Lib\\lib-tk" 

然後雙擊.reg文件來添加註冊表。

0
  • 打開註冊表。
  • HKEY_LOCAL_MACHINE中查找python。
  • 將其導出到硬盤上的某個位置。
  • 在任何編輯器中打開導出的文件。
  • 將所有HKEY_LOCAL_MACHINE替換爲HKEY_CURRENT_USER並保存 該文件。
  • 現在只需雙擊.reg文件將此密鑰添加到註冊表。
  • 如果您使用regedit返回註冊表,您還會在 HKEY_CURRENT_USER中找到python。

我真的希望'pip安裝numpy'工作就像它爲python 2.7一樣工作。