点子是不可能的。PyPI上的所有软件包都有唯一的名称。程序包经常需要并相互依赖,并且假定名称不会更改。即使您设法将代码放在Python路径上,在导入模块时,python也会按顺序在sys.path中搜索路径,并在第一次匹配时停止。因此,无论首先找到哪个模块,它都将在此停止。
最好的选择是将所有代码从库复制到代码库,更改其中一个的模块名称,然后将其导入。
如果要从不同的软件包中导入具有相同名称的模块,则可以按以下步骤进行操作:
>>> from foo import bar as first_bar >>> from baz import bar as second_bar