将Python模块拆分为多个文件

时间:2015-02-13 13:52:49

标签: django python-3.x

我的Python模块变得太大了。所以不是单个文件

paradigms.py

class Hub: ...
class Virement: ...
class Bond: ...
class Credit: ...

我想要一个目录paradigms,其中包含两个文件:

transfer.py

class Hub: ...
class Virement: ...

credit.py

class Bond: ...
class Credit: ...

(当然,文件的数量和文件中的类数都要大得多。)

问题是我想像以前一样继续使用paradigms

import paradigms
paradigms.Hub(...).clear()

from paradigms import Credit

甚至

from paradigms import *

所以,在某种程度上,我希望transfercredit名称在外部界面中消失,而我的模块(我猜现在它是一个包)在外面看起来就像一个单个模块。这可以相对容易地完成吗?

1 个答案:

答案 0 :(得分:2)

您可以创建一个paradigms包,其中包含两个模块transfer.pycredit.py,将其类导入包中 __init__.py中的级别:

paradigms/
    __init__.py
    credit.py
    transfer.py

__init__.py将是:

from credit import *
from transfer import *

然后你可以这样做:

import paradigms
paradigms.Bond