【问题标题】:Import package from PYPI从 PYPI 导入包
【发布时间】:2016-07-17 16:25:33
【问题描述】:

我使用 PYPI (https://pypi.python.org/pypi) 的“pip install xxx”。然后我输入“import xxx”,它可以毫无问题地导入包。

但是,当我将我的包上传到 PYPI 时,然后我输入“import xxx”,它无法导入包。它说“ImportError,没有名为 xxx 的模块”。

我认为是因为该包不是我的当前目录?如果是,当我将包上传到 PYPI 时,我应该如何避免这个问题?谢谢。

【问题讨论】:

  • 你能纠正一下错别字吗?

标签: python python-import pypi


【解决方案1】:

您的包不包含任何(有效的)Python 包。根据定义,Python 包必须有一个__init__.py。只需在mypackagemx3292016 文件夹中放置一个空的__init__.py

但是,我建议不要使用包,而只是使用单个模块。当您需要将多个模块组合在一起时,一个包可以很好地工作。 simple example from distutils docs 展示了如何列出各个模块。

在安装方面,您需要与任何其他软件包完全相同:

pip install mypackagemx3292016

如果您想避免每次将新版本上传到 pypi 时都必须这样做的麻烦,您可以对本地副本进行符号链接:

pip install -e /path/to/mypackagemx3292016

如果这不起作用,则您的setup.py 可能有问题。

【讨论】:

  • 谢谢。但我认为你没有回答我的问题
  • 如果您将它上传到 pypy,为什么不直接提供一个真实包的链接,以便我们为您提供帮助?反正都是公开的。
  • 谢谢。如果你能帮我解决这个问题,那就太好了。
  • 感谢您的更新。它现在对我有用。我可以毫无问题地导入包。在我“导入 mypackagemx3292016”之后,我如何调用“mypackage.py”?
猜你喜欢
  • 2020-06-13
  • 2020-08-17
  • 2021-02-26
  • 2019-11-18
  • 2019-09-14
  • 1970-01-01
  • 1970-01-01
  • 2021-09-01
  • 2019-04-03
相关资源
最近更新 更多