极客神殿

坚持,自由,信仰

Python设计模式(九)【外观模式】

努力终有回报

import time

SLEEP = 0.5

# 复杂部分
class TC1:
    def run(self):
        print("###### 测试1 ######")
        time.sleep(SLEEP)
        print(" 设置...")
        time.sleep(SLEEP)
        print("运行测试...")
        time.sleep(SLEEP)
        print("拆除...")
        time.sleep(SLEEP)
        print("测试结束了\n")


class TC2:
    def run(self):
        print("###### 测试2 ######")
        time.sleep(SLEEP)
        print("设置...")
        time.sleep(SLEEP)
        print("运行测试...")
        time.sleep(SLEEP)
        print("拆除...")
        time.sleep(SLEEP)
        print("测试结束了\n")


class TC3:
    def run(self):
        print("###### 测试3 ######")
        time.sleep(SLEEP)
        print(" 设置...")
        time.sleep(SLEEP)
        print("运行测试...")
        time.sleep(SLEEP)
        print("拆除...")
        time.sleep(SLEEP)
        print("测试结束了\n")


# 外观模式
class ExecuteRunner:
    def __init__(self):
        self.tc1 = TC1()
        self.tc2 = TC2()
        self.tc3 = TC3()
        """列表解析
          在一个序列的值上应用一个任意表达式,将其结果收集到一个新的列表中并返回。
          它的基本形式是一个方括号里面包含一个for语句对一个iterable对象迭代"""
        self.tests = [i for i in (self.tc1, self.tc2, self.tc3)]

    def runAll(self):
        [i.run() for i in self.tests]

#主程序
if __name__ == '__main__':
    testrunner = ExecuteRunner()
    testrunner.runAll()

运行结果如图:

这里写图片描述

阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/WuLex/article/details/52348079
文章标签: python 设计模式
个人分类: Python开发
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

不良信息举报

Python设计模式(九)【外观模式】

最多只允许输入30个字

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭