从Django中的模型(或表单或视图)导入的pythonic方法是什么?
坦率地说,我直言不讳地说:
from myapp.models import foo, bar, foobar, barfoo, foofoo, barbar, barfoobar, thelistgoeson, and, on, andon...
它远远超过最多79个字符 - 但是更好的方法是什么?
答案 0 :(得分:7)
使用括号将导入分组:
from myapp.models import (foo, bar, foobar, barfoo, foofoo,
barbar, barfoobar, thelistgoeson, and, on, and, so, on)
这符合PEP-328 Rationale for parentheses:
目前,如果要从模块中导入大量名称或 包,你必须选择几个令人不快的选择之一:
- 用反斜杠连续写一个长行:
- 编写多个导入语句:
(
import *
不是一个选项; - )相反,应该可以使用Python的标准分组 机制(括号)写入import语句:
这部分提案从一开始就获得了BDFL的批准。
在Python 2.4中添加了括号支持。
答案 1 :(得分:2)
导入模型怎么样?
from myapp import models
foo = models.foo
bar = models.bar
它更短,您无需维护导入列表。您还可以拥有一个名称空间,并且可以使用名为foo
和bar