从名称冲突软件包导入结构不同的文件吗?

时间:2019-12-19 18:08:12

标签: python python-import

我有一个像这样布置的包裹foo

.
└── foo
    ├── bar.py
    └── __init__.py

但是,我的foo中还有另一个名为$PYTHONPATH的软件包,其布局如下:

.
└── foo
    ├── qux.py
    └── __init__.py

我真正关心的是从前者导入bar,并从后者导入qux

是否有一种合理的清洁方法可以解决冲突?具体来说,要利用尽管它们具有相同的名称而使它们具有不同的结构这一事实吗? (具体来说,第一个包含嵌套的bar,第二个包含嵌套的qux)。

例如,如果有一种方法可以import foo并从列表中获取匹配的foo包,而不仅仅是{{1 }},我可以遍历它们并测试$PYTHONPATH

有理由回答这是行不通的,并且没有办法处理这种名称冲突-即hasattr(package, 'bar')中有多个名称完全相同的软件包。

0 个答案:

没有答案