zoukankan      html  css  js  c++  java
  • python3用list实现栈

    工作中遇到的需求,****代表标签数据别的信息:

    D01  ********  1  ********

    D01  ********  2  ********

    D01  ********  3  ********

    D01  ********  4  ********

    D02  ********  1  ********

    D02  ********  2  ********

    ......后面还有好多。

    要变成:

    D01  ********  4  ********

    D01  ********  3  ********

    D01  ********  2  ********

    D01  ********  1  ********

    D02  ********  2  ********

    D02  ********  1  ********

    ......

    相当于把标签(红色字体)是一样的,进栈,再出栈,出栈的结果放进list里。

    #!/usr/bin/env python3
    #-*- coding:utf-8 -*-
    
    def main():
      pass
    
    if __name__ == "__main__":
      f = open("info", 'r')
      list_info = []
      list_temp = []
      last_field = "D01"
      for line in f:
        new_field = line.split()[0]
        if new_field == last_field:
          list_temp.append(line)
        else:
          while(list_temp):
            list_info.append(list_temp.pop())
          last_field = new_field
          list_temp.append(line)
      while(list_temp):
        list_info.append(list_temp.pop())
      for item in list_info:
        print(item, end='')
    
      f.close()
      main()

    最后一个标签的数据需要单独出栈,追加到最终的list里。

  • 相关阅读:
    批处理操作
    注册表操作
    js 表格操作(兼容模式
    asp解码.net传参
    windows+nginx 查看并发链接数
    windows+nginx负载测试
    开发cocos2dx真机插件遇到问题,以及心得
    react路由
    Redux实现原理解析及应用
    test
  • 原文地址:https://www.cnblogs.com/donggongdechen/p/8686027.html
Copyright © 2011-2022 走看看