2012-02-29 35 views
1

每當我嘗試在Windows上使用Python過期時,我總是碰到帶有導入語句的牆。 Python無法在Windows上找到任何東西 - 每次導入,即使是像時區故障一樣的核心。如何在Windows上正確設置PYTHONPATH變量?

我知道這與PYTHONPATH環境變量有關。在我的情況下,Python被安裝到「C:\ Python27」。我的PYTHONPATH看起來像這樣:

C:\Python27;C:\Python27\DLLs;C:\Python27\Lib 

不過,沒有什麼會導入。我得到這樣的錯誤:

File "D:\Code\Django\polls\models.py", line 3, in <module> 
    from django.utils import timezone 
ImportError: cannot import name timezone 

我的情況有什麼問題?

+1

你是怎麼在Windows上安裝Django的? – 2012-02-29 02:08:35

+0

您是否已將python添加到PATH而不是python路徑。您需要將c:/ pyhon27添加到您的路徑中。另請參閱上述評論。 – 2012-02-29 03:38:42

+0

Django在Windows上:http://www.helicontech.com/articles/running-django-on-windows-with-performance-tests/ – Deane 2012-02-29 15:59:08

回答

2

看看using Python on Windows的官方文檔,特別是關於finding modules的部分。

如果您未將它們安裝到Python27\Libs\site-packages目錄中,則必須將安裝第三方模塊的目錄添加到您的PYTHONPATH

另一種選擇是熟悉pipvirtualenv。這些工具使安裝第三方模塊變得輕而易舉。雖然我不知道他們在Windows上的支持程度如何(我主要在Linux上進行Python開發)。

-1

virtualenv是不錯的選擇。
否則只需在路徑中添加站點包。

+0

爲什麼它被低估? – sam 2012-03-05 05:51:38

+0

「在路徑中添加站點包」。網站包中的所有內容都已放在Python路徑中。 – 2012-05-02 23:59:53

2

PYTHONPATH =如果此變量存在於您的環境中,則當您使用任何導入語句時,Python會將其添加到模塊的正常搜索路徑;您通常不會修改此,因爲行爲良好的Python腳本將自行安裝在site-packages目錄中,Python默認會搜索此目錄。

PATH =這是全局文件系統路徑。您的操作系統將搜索此變量中列出的目錄(從左到右),以在命令提示符處鍵入內容時查找命令。

爲了使Python只能正常工作在Windows上,C:\Python27目錄應該在PATH中列出。如果您以管理員身份運行安裝程序,安裝程序將修改全球PATH併爲您添加此項。如果您將其作爲普通用戶安裝,則需要手動修改PATH

要手動添加,請右鍵點擊並選擇Properties。點擊Advanced,然後Environment Variables。您會看到兩個框 - User VariablesSystem Variables。您只能編輯用戶變量 - 系統變量需要管理員權限。

只需添加一個新的變量(或修改現有PATH)您還應該添加C:\Python27\ScriptsPATH通過Python腳本作爲安裝大多數命令(如django-admin.py)在這裏安裝的。目錄之間由;

一旦你完成了這一點; python應該可以在Windows上正常工作。