导入python模块的有效方法是什么?

时间:2010-11-11 21:14:14

标签: python django django-views python-import

我在Django中写了一些视图,它们只是python函数。我很好奇是否有更好的方式来安排我的文件。

这就是......

import a, b
def x(request): return a(request)
def y(request): return b(request)

比将它放在两个文件中效率低吗?

import a
def x(request): return a(request)

import b
def y(request): return b(request)

因为对于每个请求只会调用其中一个函数,所以在我看来,将另一个放在同一个文件中并导入另一个需要的模块是一个坏主意。我对吗? django无论如何只是导入了整批货物吗?

4 个答案:

答案 0 :(得分:3)

除非你通过CGI运行Django(我真的希望你不是这样),否则导入将在第一次执行后被缓存,而这整个论点毫无意义。

答案 1 :(得分:2)

没有太大的区别,使用最可读的东西。

答案 2 :(得分:0)

您无需担心使用的文件数量;性能差异可以忽略不计。也就是说,有更有效和可读的方法来使用导入。

只导入你需要的东西;永远不要使用from x import *,除非你真的要使用X中的所有东西。不要嵌套进口;而不是import a, b,写:

import a
import b

至于您的具体问题,您应该有一个模块来表示典型的行动方案。如果您必须一个接一个地运行两个函数,请将它们放在同一个文件中。如果没有,请为您和与您合作的人做最有意义的事情。请记住,采用import a形式(而不是from x import y, z)的导入相对便宜。

答案 3 :(得分:0)

此外,而不是这样做:

def x(request): return a(request)

调用原始函数可能会更好。