【发布时间】:2010-11-10 04:30:08
【问题描述】:
我想知道 - 人们如何处理在 django 视图中导入大量常用模块?什么是有效地做到这一点的最佳方法?
例如,我有一些观点,例如,
admin_views.py
search_views.py
.
.
据我所见,他们每个人都需要使用 HttpResponse 或其他此类常用模块。此外,其中一些需要 BeautifulSoup 之类的东西,而另一些则需要其他东西(md5、auth 等)。
我在开始这个项目时所做的是创建一个 include_all.py ,其中包含我的大部分常见导入,然后在 view 本身中添加这些特定的东西。所以,我有类似的东西,
admin_views.py
from include_all import *
...
[list of specific module imports for admin]
...
search_views.py
from include_all import *
...
[list of specific module imports for search]
...
随着时间的推移,include_all 变成了一个 misc 文件,其中包含任何需要的东西 - 结果,许多视图最终导入了它们不需要的模块。
这会影响效率吗?也就是说,python(django?)是否将所有模块导入一次并存储/缓存它们,以便任何其他需要它们的视图不必再次导入它?还是我调用这个长文件的方法效率很低 - 我最好坚持在每个视图中单独导入这些模块?
这类事情也有最佳实践吗?
谢谢!
【问题讨论】:
标签: python django performance import python-module