【发布时间】:2020-07-17 07:07:02
【问题描述】:
假设我们正在使用import xyz 导入一些名为xyz 的第三方包或模块(这不是像datetime 这样的“内置”)。 xyz 的 PyPI 名称通常相同,因此在 pip list 中会显示为 xyz。但是,据我所知,没有规定必须如此。例如,google-pasta 的模块名为 pasta。
鉴于我是importing 的模块或包的名称,有没有办法确定它来自哪个 PyPI 包(除了猜测 PyPI 包并查看源代码)?相反,有没有办法知道给定 PyPI 安装将哪些包和模块引入命名空间?
【问题讨论】:
-
"给定我要导入的模块或包的名称" 你是否还假设包已实际安装?或者您是否还需要涵盖,例如,查找/继承一些代码,并且必须弄清楚要安装哪些软件包才能使其工作?请注意,实际的包名称不一定是唯一的,例如
PIL导入由PIL和Pillowpypi 包提供。 -
@MisterMiyagi,是的,请假设软件包已安装。最初,让我想到的是:我正在导入的这个模块有问题;也许升级会解决它?但要做到这一点,我需要找到要给 pip 的 PyPI 名称...
标签: python pip pypi python-packaging