这个问题可能非常简单,但这里有:
我正在编写一个需要大量课程的应用程序。我想基本将这些类捆绑到组中。为此,我基本上创建文件夹并将类.py文件放在这些文件夹中。
因此,示例文件夹结构可能是这样的:
mainApp.py
moreAppCode.py
functions
|- mathstuff.py
|- my_object.py
`- network.py
gui
|- wxMainForm.py
|- wxSplashScreen.py
`- wxAboutBox.py
现在,我发现在“import”语句中轻松引用这些类的唯一方法是在两个文件夹中创建__init__.py
个文件,并在这些 init 文件中创建,导入每个.py文件。所以我必须做类似的事情:
(functions/__init__.py)
from mathstuff import mathstuff
from my_object import my_object
from network import network
这允许我在mainApp.py中执行类似import functions
的操作。
然而,在我看来,应该有一种更简单,更简单的方法来实现这一目标。
我真的不想做import gui.wxMainForm.wxMainForm
之类的事情(每个.py文件只包含一个由其文件名表示的类)。此外,这排除了import gui.*
之类的任何事情(无效)。因此,无论我发现什么,我最终都必须手动导入每个.py文件,无论是在 init 文件中,还是在计划使用它们的实际.py文件中。
我可以使用from gui import wxMainForm
缓解一些混乱,但我仍然需要做wxMainForm.wxMainForm()
。我可以做from gui.wxMainForm import wxMainForm
吗?但是,在我正在使用的任何代码文件的顶部,我们仍然会回到大量的import语句中。
所有这一切的重点是我不想依赖 init 文件来完成这项工作,因为如果我需要重命名一个类或添加一个类就意味着一次旅行进入 init 添加或更改它 - 容易忘记做的事情,并且难以调试!
我错过了什么吗?
由于
-f