如果正在使用的工程和依赖的其它工程的包路径有重复部分时,需要在包的__init__.py中作如下声明:

# http://www.python.org/dev/peps/pep-0382/
try:
    import pkg_resources
    pkg_resources.declare_namespace(__name__)
except ImportError:
    # don't prevent use of paste if pkg_resources isn't installed
    from pkgutil import extend_path
    __path__ = extend_path(__path__, __name__)

try:
    import modulefinder
except ImportError:
    pass
else:
    for p in __path__:
        modulefinder.AddPackagePath(__name__, p)

例如:当前工程为xglabc.coding,依赖xglabc.utils时,需要在两个代码包的xglabc/init.py中加入。

[ 编辑 | 历史 ]
最近由“jilili”在“2016-09-03 16:18:48”修改