从子文件夹导入模块

问题描述 投票:0回答:1

我无法从子文件夹导入模块,从我所在的子文件夹导入模块; 我使用的文件夹是这样的:

Project
   __init__.py
   /objects
      __init__.py
      button.py
      text.py
   /menu
      __init__.py
      main_screen.py

我将

__init__.py
文件放在所有包含模块的文件夹中;也使用
sys.path.insert
不起作用,我不知道如何处理这个问题

我想从

objects
文件夹导入
button.py
text.py 模块,而我位于
menu
子文件夹中的 main_screen.py

但是当我在

main_screen.py
尝试这个时:

from ..objects.button import Button
from ..objects.text import Text

出现此错误:

ImportError: attempted relative import with no known parent package 

python import sys
1个回答
0
投票

当您运行

main_screen.py
时,路径
'.../Project/menu'
将添加到
sys.path
。相反,您想要的是在执行
'.../Project'
之前将
main_screen.py
添加到 sys.path 中。您的 IDE 应提供项目路径的设置,您可以在其中更改它。

© www.soinside.com 2019 - 2024. All rights reserved.