Python包"没有名为......的模块"

whi*_*t25 5 python import package python-3.x

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

Math/
    __init__.py
    divide.py
    minus.py
    multiply.py
    plus.py
Run Code Online (Sandbox Code Playgroud)

四个文件中的每一个都声明了一个简单的数学函数.我的init文件很简单

from plus import *
from minus import *
from multiply import *
from divide import *
Run Code Online (Sandbox Code Playgroud)

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

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'
Run Code Online (Sandbox Code Playgroud)

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

JBe*_*rdo 7

您正在使用Python 3,它需要在包内部进行相对导入.

from .plus import *
from .minus import *
from .multiply import *
from .divide import *
Run Code Online (Sandbox Code Playgroud)