Python 绝对文件夹结构中的ModuleNotFoundError

Python 绝对文件夹结构中的ModuleNotFoundError,python,python-3.x,Python,Python 3.x,这可能在其他地方得到回答,但我找不到解决办法 我有以下两种文件夹结构: app/ service/ __init__.py caller.py ... utils/ __init_.py config.py ... __init__.py ... 在caller.py中,我有: 从cd到app/service运行python caller.py时,我得到: 但是,如果我将caller.py移动到app文件夹并使用以下导入行: fr

这可能在其他地方得到回答,但我找不到解决办法

我有以下两种文件夹结构:

app/
  service/
    __init__.py
    caller.py
    ...
  utils/
    __init_.py
    config.py
    ...
  __init__.py
  ...
在caller.py中,我有:

从cd到app/service运行python caller.py时,我得到:

但是,如果我将caller.py移动到app文件夹并使用以下导入行:

from utils import config

它起作用了。为什么?我也尝试过使用.app.utils、…utils等,但没有效果。

如果将父目录添加到路径中,那么当更改为directory/app/service时,Python将找到相邻的utils目录

caller.py config.py 输出
如果将父目录添加到路径中,那么当更改为directory/app/service时,Python将找到相邻的utils目录

caller.py config.py 输出
这回答了你的问题吗?否,最接近的答案是从application.app.folder.file import func_name中提到的,但它对我不起作用。在将文件移动到app后运行caller.py时,您是否仍在app/service/?does from..utils import config work中这是否回答了您的问题?否,最接近的答案是从application.app.folder.file import func_name中提到的,但它对我不起作用。在将文件移动到app后运行caller.py时,您是否仍在app/service/?does from..utils import config work中
from app.utils import config
ModuleNotFoundError: No module named 'app'
from utils import config
import sys

sys.path.insert(1, '../')

from utils import config

print(f"Caller imported config value SETTING_X: {config.SETTING_X}")
SETTING_X = 42
Caller imported config value SETTING_X: 42