Python提取某字符串中的特殊0

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/iamlvshijie/article/details/72597879


以下例程:涉及文件读写、字符串处理


规则:提取64bit的数即8个byte中,每个byte的高4位为0时,去掉此高四位

将测试数写入test.txt,内如如下

d2065197970e3225
d206519797e03225
d260519797e03225
d286519797003225
d286519790003225
0086519797e03200



try:
    f_r = open("test.txt",'r')
    line = f_r.readline()  
    size = len(line)
    f_w = open("res.uid",'w')
    while line: 
        line_tail = line
        line_head = ''
        #print line_tail
        res = line_tail.find('0')
        while res>=0:       
            #print res
            if  res%2==0:                    
                line_head = line_head + line_tail[0:res]+line_tail[res+1]                      
                line_tail = line_tail[res+2:]       
            else:
                line_head = line_head + line_tail[0:res+1]      
                line_tail = line_tail[res+1:]           
            #print line_head
            #print line_tail
            res = line_tail.find('0')
        res_line = line_head+line_tail
        f_w.write(res_line)
        line = f_r.readline()
finally:
    f_r.close()
    f_w.close()



输出的res.uid,结果如下:

扫描二维码关注公众号,回复: 3244066 查看本文章

d2065197970e3225
d206519797e03225
d260519797e03225
d286519797003225
d286519790003225
0086519797e03200

符合要求


猜你喜欢

转载自blog.csdn.net/iamlvshijie/article/details/72597879