关闭

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

标签: python设计模式
1323人阅读 评论(0) 收藏 举报
分类:

努力终有回报

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()

运行结果如图:

这里写图片描述

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:980399次
    • 积分:14417
    • 等级:
    • 排名:第934名
    • 原创:311篇
    • 转载:646篇
    • 译文:72篇
    • 评论:262条
    博客专栏
    文章分类
    打赏
    如果你觉得我的文章对您有用,请随意打赏。 微信 支付宝