python 特殊字符作为分割行 调整非时间开头格式

#!/usr/bin/python
# -*- coding: utf-8 -*-
import os
import sys
#import io
import time

file1 = sys.argv[1]
file2 = sys.argv[2]
list_all = [] 


def get_current_time():
    time_stamp = time.time()  # 当前时间的时间戳
    local_time = time.localtime(time_stamp)  #
    str_time = time.strftime('%Y-%m-%d---%H-%M-%S.txt', local_time)
    return str_time


def file_get(file):
    print file
    i = 0
    with open(file,'r') as fp:
        contents  = fp.read()
        #print contents 
        lines = contents .split('[')
        #print lines,type(contents ),type(lines)
        for line in lines:
            #print line,type(line)
            if (len(line) < len("[10:32:29.765]")):
                print line,"--------error line---------"
                continue
            t1 = line[0:12]
            print t1
            str2 = line[14:]
            #s1 = line[0:2]
            sub_dict = {}
            sub_dict["time"] = t1 
            sub_dict["at"] = str2       

            print line,len(line),"-line----"
            print t1,len(t1),type(t1),"---t1--"
            print str2,len(str2),"---str2--"
            #print s1,len(s1),"---s1--"
            print sub_dict
            list_all.append(sub_dict)
            #i +=1
            #if (4==i):
            #    break;
 
def file_write(file):
    new_s = sorted(list_all,key = lambda e:e.__getitem__('time'))
    with open(file,"w") as fp:
        for line in new_s:
            str = line["time"] + " " + line["at"].replace("\r\n", "\r\n                     ").strip(' ')
            print type(str), str
            fp.writelines(str)
            
                       
def main():
    #print "we are in %s"%__name__
    print file1, file2
    file_get(file1)
    file_get(file2)
    #for l in list_all:
    #    print l
    d1 = get_current_time()
    print d1
    file_write(d1)

if __name__ == '__main__':
    main()
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值