我正在尝试用 Python 构建我的应用程序。从 C#/Java 背景回来后,我喜欢每个文件一个类的方法。我希望我的项目树看起来像这样:
[Service]
[Database]
DbClass1.py
DbClass2.py
[Model]
DbModel1.py
DbModel2.py
TheService.py
[ServiceTests]
[Database]
DbClass1Tests.py
DbClass2Tests.py
[Model]
DbModel1Tests.py
DbModel2Tests.py
TheServiceTests.py
- Python 中每个文件一个类的方法可以吗?
-
是否可以以这种方式创建包/模块,以便包像 Java 的包或 .NET 的命名空间一样工作,即在 DbModel1Tests.py 中:
import Service.Model
def test():
m = DbModel1()
Q1.您可以在 Python 中使用每个文件 1 个类的样式,但这并不常见。
Q2。你必须使用from Service.Model import *
并做一些事情Service/Model/__init__.py
这通常是不受欢迎的。避免import *
在Python中
我个人对此的建议:Python 是notC#/Java。试图将其弯曲,使其看起来像 $other_language 会导致挫败感和糟糕的用户体验。
请记住:
- 除了 Python 模块中的类之外,你还可以有其他东西(例如函数)
- 您不必从模块导入类,除非您需要实例化该类。特别是,如果您的代码仅使用 DbModel1 的实例并将其作为参数传递给您的函数/方法,则无需在该部分代码中导入
- from
Service.Model.DbModel1 import DbModel1
看起来很糟糕。更喜欢from service.model import DbModel1
:避免在文件名和目录名中使用大写字母,并在文件中对类/函数进行逻辑分组(而不是像每个文件系统 1 个类那样将它们分组在目录中。)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)