因此,在主作用域以及bbb中都有一个模块ccc

我要添加一个名为tools的库,该库也有两个名为bbbccc的模块:


  工具
  
  
  __init__.py
  aaa.py
  bbb.py
  抄送
  


bbb.py中,我将主要范围bbb导入:

from __future__ import absolute_import
import bbb


并在ccc.py中执行相同的操作:

from __future__ import absolute_import
import ccc


但是当我导入工具和目录时,我只能看到:

['__builtins__', '__doc__', '__file__',
'__name__', '__package__', '__path__', 'aaa']


但是bbbccc似乎不可见。

我在这里想念什么吗?

最佳答案

但是当我导入工具和目录时,我只能看到:

['__builtins__', '__doc__', '__file__',
'__name__', '__package__', '__path__', 'aaa']

  
  但是bbbccc似乎不可见。


导入软件包不会自动加载其所有子模块。如果要使用tools.bbb包,则需要执行

import tools.bbb
# or
from tools import bbb


import tools不会删减。或者,您可以让tools在其__init__.py中显式加载其子模块:

# in __init__.py
from . import aaa, bbb, ccc

关于python - 从__future__导入absolute_import不起作用?子模块不可见,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29811083/

10-16 10:23