2012-08-03 69 views
2

我是新來的大型項目使用python。我想通了,下面的文件夾結構,我的Python項目:大型項目的Python文件夾結構

project 
    --> doc 
    --> src 
     --> hardware 
     --> devices 
       --> device1 
       --> device2 
     --> measurement 
     --> ui 
     --> util 
    --> tests 
     --> hardware 
     --> devices 
       --> device1 
       --> device2 
     --> measurement 
     --> ui 
     --> util 

測試文件夾包含單元測試在索裏的文件夾模塊。這是一個這樣的計劃的正確方法嗎?

我該怎麼做導入?我以爲將根文件夾添加到python路徑並從根路徑中導入每個模塊絕對。我應該這樣做嗎?

該程序用於幾個計算機。我應該如何部署它?目前我使用SVN,每臺計算機都可以獲得整個項目並從那裏啓動。有一個缺點,我必須在每臺計算機上添加主題路徑到PYTHONPATH

回答

2

全球結構看起來不錯。 您需要一個模塊來編寫setup.py腳本來安裝您的軟件包,例如setuptools。這將允許安裝和分發包。 另請參閱Pypi分發包裝。 通常情況下,您可以:

sudo setup.py install 

在系統級安裝軟件包。 或者你可以:

sudo setup.py install --prefix=~/local 

在用戶級別安裝。 但是,您必須將〜/ local/lib/python/site-packages添加到您的PYTHONPATH中。但是這個用戶安裝的所有軟件包只能執行一次。

如果你的包存儲PyPI上,你可以在任何機器上做:

easy_install mypackage 

爲自動神奇地安裝軟件包。

更好的是,您可以使用virtualenv使您的軟件包僅在孤立的python「虛擬環境」中可見。這允許在同一臺計算機上輕鬆測試各種軟件包和版本。

您還可以在軟件包根目錄級別添加自述文件等。