我正在使用Django,我喜歡將我的模型,視圖和測試分離到子目錄中。在Python中實現「from。import *」的最佳方式是什麼?
但是,這意味着我需要在導入該目錄中每個模塊的每個子目錄中保留一個__init__.py
。
我寧願只是把一些呼叫,說:
from some_library import import_everything
import_everything()
這將對作爲遍歷當前目錄相同的效果,並在該目錄中導入所有的.py文件。
什麼是最好/最簡單的方法來實現這個?
這裏是什麼我的Django應用程序目錄(基本)的樣子:
some_django_app/
models/
__init__.py
create.py
read.py
update.py
delete.py
views/
__init__.py
create.py
read.py
update.py
delete.py
forms/
__init__.py
create.py
update.py
tests/
__init__.py
create.py
read.py
update.py
delete.py
所以,你可以看到,做一個「適當」的Django應用程序,我所有的初始化 .py文件需進口每個目錄中的所有其他.py文件。我寧願在那裏有一些簡單的樣板。
您可以添加示例目錄佈局嗎? – Cameron 2012-01-30 18:49:39
更新爲包含目錄佈局。 – slacy 2012-01-30 19:01:56
請注意'來自。 import *'通常是一個壞主意,因爲名字空間可能會在您不知情的情況下被覆蓋。請參閱[有關該主題的文檔](http://docs.python.org/howto/doanddont.html#from-module-import) – 2012-01-30 19:42:31