python: Какова причина запрета * в относительном импорте? - PullRequest
8 голосов
/ 07 июня 2011

Какой смысл скрывать * в относительном импорте?например,

from ..new_tool import *

или относительный импорт напрямую:

import ..new_tool

1 Ответ

7 голосов
/ 07 июня 2011

Причина, по которой последнее запрещено, заключается в том, что ..new_tool не может использоваться в выражении (PEP 328) :

Причина, по которой import .foo запрещена, заключается в том, что после

    import XXX.YYY.ZZZ

, тогда XXX.YYY.ZZZ можно использовать в выражении.Но

    .moduleY

не может использоваться в выражении.

Поскольку * -импорты должны быть быстрым взломом в процессе разработки, я подозреваю, что функциональность для относительного * - импорт был исключен, потому что в этом нет необходимости.

...