В чем причина запрета * на относительный импорт? например
from ..new_tool import *
или сделать относительный импорт напрямую:
import ..new_tool
В чем причина запрета * на относительный импорт? например
from ..new_tool import *
или сделать относительный импорт напрямую:
import ..new_tool
Причина, по которой последнее запрещено, заключается в том, что ..new_tool
нельзя использовать в выражении (PEP 328)< /а>:
Причина
import .foo
запрещена в том, что послеimport XXX.YYY.ZZZ
тогда
XXX.YYY.ZZZ
можно использовать в выражении. Но.moduleY
нельзя использовать в выражении.
Поскольку *
-импорт должен быть только быстрым взломом во время разработки, я подозреваю, что функциональность для относительного *
-импорта была исключена, потому что в этом нет необходимости.
import .foo as _foo
. хотя хорошо, что в вашем коде нет import *
.
- person Claudiu; 07.06.2011
import ... as
, но не голый import
.
- person Katriel; 07.06.2011
from . import foo
, так что вы ничего не потеряете, если не сможете сделать import .foo
.
- person Claudiu; 07.06.2011
import *
, а не только к относительным. - person Claudiu   schedule 07.06.2011import *
, которая также не относится к обычной части - person Claudiu   schedule 08.06.2011