我正在自动化由多个独立应用程序组成的环境。在某些时候,我已经决定将每个应用程序定义为类并将其另存为单独的文件是最有意义的。
我现在拥有的内容:
包含*py
个文件的目录,其中每个文件为单个应用程序定义单个类。因此,例如,我有应用程序App1
。它保存在App1.py
文件中,看起来像这样:
class App1:
def __init__(self):
self.link = config.App1_link
self.retry = config.App1_retry
def access(self):
pass
def logOut(self):
pass
因此每个类都定义了App1可以执行的所有操作,例如start \ login to the application,perform operation,log out from the application等。
然后,在一个单独的文件中,我创建应用程序对象并逐个调用对象的方法来创建一个多步骤方案。
我想要实现的目标
这一切都很好,但有一个改进的地方。许多类方法或多或少相似(例如从应用程序中登录到\ _的方法),显然可以在某种基类中定义,然后我可以从中继承。但是,由于我将所有应用程序定义在单独的文件中(这似乎是目前的逻辑解决方案),因此我不知道在何处定义此类基类以及如何从中继承。我有两个选择,但我不确定哪一个(如果有的话)将是正确的方法。
这些是我唯一的选择,如果它们是哪一个,哪一个更有意义呢?
答案 0 :(得分:2)
这正是导入 for 的原因。在单独的模块中定义基类,并将其导入到您需要的任何位置。选项1非常有意义。
请注意,Python的module naming convention是使用小写名称;这样你就可以更容易地区分类和模块。我将App1.py
重命名为app1.py
。