Python - 在复杂应用程序中导入模块的最佳方法?

时间:2013-09-26 07:25:07

标签: python

我正在重构一个Python 2软件。代码当前位于单个文件中,该文件包含45个左右的类(以及类之外的2行以引导应用程序)。

我希望每个文件有一个类,理想情况下来自相关类的文件分组在目录中。

我通常喜欢编写我的Python导入:

from zoo.dog_classes.beagle_class import BeagleClass
from zoo.dog_classes.dalmatian_class import DalmatianClass

以便明确在类中导入哪些模块,并且它们的名称尽可能短。

对于这个软件来说,逻辑非常复杂,类通常在类方法中相互引用,导致大量循环导入,这排除了这种方法。

我不想在函数中导入模块,因为这对可读性来说太可怕了,代码在任何地方都会重复。

似乎我唯一的选择是以这种方式编写导入:

import zoo.dog_classes.beagle_class

以后,当我需要课程时:

b = zoo.dog_classes.beagle_class.BeagleClass()

然而,这写起来非常冗长和痛苦。

我应该如何处理我的进口?

1 个答案:

答案 0 :(得分:1)

import zoo.dog_classes.beagle_class as beagle

b = beagle.BeagleClass()