3
我有几个Python包,我想保留在单独的文件系统上,但不幸的是共享相同的顶级模块名称。在不同目录中保留具有相同顶级名称的Python包
为了说明,目录结构如下:
/fs1
/top
__init__.py
/sub1
__init__.py
/fs2
/top
__init__.py
/sub2
__init__.py
在Python 2.7,有没有什么办法,我可以设置我PYTHONPATH
,这样我可以导入这两个top.sub1
和top.sub2
到同一个脚本?同时添加/fs1
和/fs2
不起作用,因为它只允许导入两个子模块中的一个(以PYTHONPATH
中的先到者为准)。
我可以将两棵树复制/符号链接成一个,但出于实际的原因,我宁愿不这样做。
是的,有一种方法,它叫做 “命名包”。 http://stackoverflow.com/questions/1675734/how-do-i-create-a-namespace-package-in-python请注意,如果你这样做,'top'包必须是空的,该名称空间不能包含除sub1和sub2软件包以外的任何内容。 –