Python包“没有名为......的模块”

时间:2013-07-05 00:21:04

标签: python python-3.x import package

我是Python的新手,我正在创建我的第一个简单包。这是我的结构:

Math/
    __init__.py
    divide.py
    minus.py
    multiply.py
    plus.py

四个文件中的每一个都声明了一个简单的数学函数。我的 init 文件只是

from plus import *
from minus import *
from multiply import *
from divide import *

但是,当我尝试“导入数学”时,我收到以下错误:

Traceback (most recent call last):
  File "<pyshell#0>", line 1, in <module>
    import Math
  File ".\Math\__init__.py", line 1, in <module>
    from plus import *
ImportError: No module named 'plus'

是的,我知道我的包裹必须在正确的文件夹中;如果我将我的任何一个文件移到Math文件夹之外并从shell上单独运行导入调用它就可以正常工作。

1 个答案:

答案 0 :(得分:7)

您使用的是Python 3,它需要在包中进行相对导入。

from .plus import *
from .minus import *
from .multiply import *
from .divide import *