我应该用python在每个文件中编写导入语句吗

我应该用python在每个文件中编写导入语句吗,python,python-3.x,module,python-import,Python,Python 3.x,Module,Python Import,我有三个文件:module\u one.pymodule\u two.pymodule\u two.py,每个文件中都有自己的类: # module_one.py from module_two import ModuleTwo from module_three import ModuleThree class ModuleOne: ... # module_two.py from module_one import ModuleOne from module_three import Mo

我有三个文件:
module\u one.py
module\u two.py
module\u two.py
,每个文件中都有自己的类:

# module_one.py
from module_two import ModuleTwo
from module_three import ModuleThree
class ModuleOne:
...

# module_two.py
from module_one import ModuleOne
from module_three import ModuleThree
class ModuleTwo:
...

# module_three.py
from module_one import ModuleOne
from module_two import ModuleTwo
class ModuleThree:
...
我有一个文件
main.py
,如下所示:

# main.py
from module_one import ModuleOne
from module_two import ModuleTwo
from module_three import ModuleThree
... # and uses them
它是应用程序的入口点,并使用这些模块类。

在您看到的每个模块文件(
module.*.py
)中,我必须导入其他模块才能使用它们。有没有更好的方法来管理这件事?我是否可以在
main.py
中编写一条语句,然后在内存中加载的模块文件可以看到彼此并调用自己,而不必先在各自的文件中导入彼此?

这里有一个很好的解释:作为一个例子,Pygame定义了
init()
方法在其主模块和子模块中,您可以执行类似的操作。我不久前也询问过模块:。//由于我习惯于C++编程,所以我仍然坚持一个到几个类在每个文件。我只从其他模块导入类,并从。。。导入…如果它们在该特定模块中是绝对必要的。如果每一个类实际上都需要另外两个类,那么是否有充分的理由不将所有三个类放在一个模块中?Python不是Java,Java只允许每个文件有一个公共类。@chepner我认为这是一个品味问题。要么你对大文件/类/方法没问题,要么你倾向于拆分它们。对于我来说,大小是重新思考我的设计的一个指标。这里有一个很好的解释:作为一个例子,Pygame在其主模块和子模块中定义了
init()
方法,您可以这样做。我不久前也问过模块:。//由于我习惯于C++编程,所以我仍然坚持一个到几个类在每个文件。我只从其他模块导入类,并从。。。导入…如果它们在该特定模块中是绝对必要的。如果每一个类实际上都需要另外两个类,那么是否有充分的理由不将所有三个类放在一个模块中?Python不是Java,Java只允许每个文件有一个公共类。@chepner我认为这是一个品味问题。要么你对大文件/类/方法没问题,要么你倾向于拆分它们。对我来说,尺寸是重新思考我的设计的一个指标。