前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >状态模式

状态模式

作者头像
用户2936342
发布2018-08-27 14:22:40
2620
发布2018-08-27 14:22:40
举报
文章被收录于专栏:nummy

状态模式就是根据不同的状态调用不同的方法

代码语言:javascript
复制
def outputparser(loglines):
    state = 'header'
    program,end_time,send_failure= None,None,False

    for line in loglines:
        if state == 'header':
            program = line.split(',')[0]
            state = 'body'
        elif state == 'body':
            if 'send_failure' in line:
                send_failure = True
            if '======' in line:
                state = 'footer'
        elif state == 'footer':
            end_time = line.split(',')[0]
    return program, end_time, send_failure

print(outputparser(['sampleapp,only a sampleapp',
              'logline1  sadfsfdf',
              'logline2 send_failure',
              '=====================',
              '30th Jul 2016,END']))

输出如下:

代码语言:javascript
复制
('sampleapp', '30th Jul 2016', True)
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2017.07.07 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档