ModuleNotFoundError: No module named 'x' while importing modules

ModuleNotFoundError: No module named 'x' while importing modules

in Python 3 我尝试导入模块(导入另一个模块)并且我得到 ModuleNotFoundError。我的主模块如下所示:

from next_folder import adding
adding.add(1)

然后在文件夹 next folder 中还有另外两个模块。第一个是 adding.py:

import substracting

def add(a):
    b = 1
    d = substracting.substract(20)
    c = a+b+d
    print(c)

第二个(在同一文件夹中)是substracting.py:

def substract(c):
    d = c-1
    print(d)
    return d

虽然 运行 main.py 我收到以下错误:

  File "C:\Users\LENOVO\PycharmProjects\pythonProject\main.py", line 1, in <module>
    from next_folder import adding
  File "C:\Users\LENOVO\PycharmProjects\pythonProject\next_folder\adding.py", line 1, in <module>
    import substracting
ModuleNotFoundError: No module named 'substracting'

你能帮我修改这段代码,使 main.py 真正起作用吗?谢谢!

在那种情况下你可以使用相对导入

from . import substracting

在 python 中,3 相对导入仅以 from 的形式被支持。导入子模块

这也行得通:

import next_folder.substracting as sub

def add(a):
    b = 1
    d = sub.substract(20)
    c = a+b+d
    print(c)