gpt4 book ai didi

python - 如何在不破坏向后兼容的情况下将一个模块拆分为多个文件?

转载 作者:太空狗 更新时间:2023-10-29 17:47:17 27 4
gpt4 key购买 nike

假设我有一个如下所示的 model.py 文件:

class Foo():
..

class Bar():
..

我从其他模块导入 model 然后使用 model.Foo()每当我想提及它们时。

import model

foo = model.Foo()

随着这个文件越来越大,我想拆分每个类分成多个文件,但如果不破坏向后兼容性可能。

我的想法是这样打破它:

model
├── __init__.py
├── foo.py
└── bar.py

但是通过这样做,我将不得不将它们称为 model.foo.Foo()

所以我的问题是:是否可以以某种方式将其拆分为多个文件,但仍将它们称为 model.Foo()

我还应该能够在 Bar 中扩展或使用 Foo

最佳答案

当然可以,只需导入 __init__.py 中的类即可:

# in __init__.py
from model.foo import Foo
from model.bar import Bar

然后当您希望使用它们时,您可以:

>>> import model
>>> model.Bar()
<model.bar.Bar object at 0x31306d0>

>>> from model import Foo
>>> Foo()
<model.foo.Foo object at 0x31307d0>

关于python - 如何在不破坏向后兼容的情况下将一个模块拆分为多个文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24100558/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com