gpt4 book ai didi

python - 在包中定义类

转载 作者:太空狗 更新时间:2023-10-29 18:04:12 25 4
gpt4 key购买 nike

我正在学习 Python,并且一直在玩弄包。我想知道在包中定义类的最佳方式。似乎在包中定义类的唯一方法是在该包的 __init__.py 中定义它们。来自 Java,我有点想为我的类定义单独的文件。这是推荐的做法吗?

我希望我的目录看起来像这样:

recursor/
__init__.py
RecursionException.py
RecursionResult.py
Recursor.py

所以我可以将我的类称为 recursor.Recursorrecursor.RecursionExceptionrecursor.RecursionResult。这在 Python 中可行或推荐吗?

最佳答案

继续在单独的模块中定义您的类。然后让 __init__.py 做这样的事情:

from RecursionException import RecursionException
from RecursionResult import RecursionResult
from Recursor import Recursor

这会将每个类导入包的根命名空间,因此调用代码可以引用 recursor.Recursor 而不是 recursor.Recursor.Recursor

不过,我觉得有必要回应其他一些评论:Python 不是 Java。我建议将密切相关的类分组到一个模块中,而不是为太阳下的每个类创建一个新模块。这样更容易理解您的代码,并且调用代码不需要大量导入。

关于python - 在包中定义类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3024472/

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