近期由于兴趣选择了Python用来开发一款辅助工具,当多任务的时候需要顺序的执行,方便的动态加载或移除不需要的任务。
这不是我第一次接触脚本类语言,所以对Python上手比较容易。我选择了PyQT作为界面工具,后台部分需要方便的修改,暂时没有寻找适合的,由于处于边学边用的阶段,如果不对,还请指正,谢谢!
环境:在windows下,选择了eclipse+pydev,python选择了2.7,至于为什么不选最新版本,由于需要使用的插件在3.4版本安装不成功。
开始正题,我需要建立一个任务,不需要很复杂的功能,只需要在对应状态时运行内部的执行功能
class TaskBase(object):
def __init__(self):
self.isexecute = True
def run(self):
if not self.isexecute:
return
self.execute()
def execute(self):
print("I am TaskBase")由于任务的变化,需要实现的功能不同,所以需要继承,并实现需要执行的功能
class MyTask(TaskBase):
def __init__(self):
super(MyTask,self).__init__()
def execute(self):
#TaskBase.execute(self)
print("I am MyTask") 当有很多的任务时,需要执行任务我不需要一个个启动
class TaskExecute(object):
def __init__(self):
self.tasklist=[]
def add(self,TaskBase):
self.tasklist.append(TaskBase)
def run(self):
for task in self.tasklist:
task.run()那么我们看下整体的效果如何
执行的实例
if __name__ == "__main__":
taskexcute = TaskExecute()
taskexcute.add(TaskBase())
taskexcute.add(MyTask())
taskexcute.run()输出结果I am TaskBase
I am MyTask
本文介绍了一个使用Python和PyQT开发的简易多任务执行器,该执行器能够按顺序执行不同的任务并支持动态加载或移除任务。通过定义基类`TaskBase`和派生类`MyTask`实现了任务的基本功能及定制化操作。
504

被折叠的 条评论
为什么被折叠?



