Python打破大类结构的最佳方法:常量和导入

时间:2015-12-29 16:59:58

标签: python oop

我有一个非常大的文件,其中包含多个类,并希望在每个类获取自己的文件时将其分解。我还有一个与这些类接口的文件:

package/
    interface.py
    classALL.py

最后我想要的是:

package/
    interface.py
    classes/
        classA.py
        classB.py
        classC.py

B类和C类继承自A类。执行此操作的最佳做​​法是什么?具体做法是:

  1. 我在哪里导入库?由于B级是A级,我可以只导入A类中的所有东西吗?
  2. 如果我在每个课程中需要 re 之类的内容,我是否需要在每个课程中导入它?这会给我同一个库的多个实例吗?
  3. 我在哪里放常数?我可以在A类中定义CONSTANT_A并使用它来完成,或者我是否需要在每个文件中定义它?

1 个答案:

答案 0 :(得分:1)

您可以为每个类提供一个文件,然后将它们全部添加到包中。

例如,您a.pyb.pyc.py分别有ABC类。您可以将文件abca.pyb.py移动到单个文件夹c.py并创建{{}},将所有这些类打包到单个包abcp中{1}}档案。

__init__.py文件可能包含类似

的内容
__init__.py

这样就可以直接从包中访问类。

例如,在from .a import A from .b import B from .c import C 中,您可以执行类似

的操作
main.py
相关问题