python 按照固定长度分割字符串的方法小结
Python  /  管理员 发布于 7年前   701
有如下的一堆mac地址,需要更改成一定格式,如mac='902B345FB021'改为mac='90-2B-34-5F-B0-21'。
借助python脚本,可以轻松实现,原理就是:字符串的按照固定长度拆分。
1,文件mac.txt,保存了如下的mac地址:
50E549E32ECB
902B3413EFA6
50E549ECBA1C
902B3457B16F
1C6F65296DF9
902B34131A14
50E549E3E2F8
50E5493A2696
902B345FB021
902B34131574
这里分享两种实现方法,供大家参考。
方法一:
代码示例:
#!/bin/python #site:# A = open('mac.txt','r') a = A.readlines() for aa in a: b = list(aa.strip()) c='' for i in range(len(b)): if i !=0: if i%2 == 0: c=c+'-'+b[i] else: c=c+b[i] else: c=c+b[i] print c A.close()
方法二:
代码示例:
#!/bin/python # import re A = open('mac.txt','r') a = A.readlines() for aa in a: b=re.findall(r'.{2}',aa) c='-'.join(b) print c A.close()
使用用python的正则表达式实现,执行效率高,值得推荐。
处理结果:
50-E5-49-E3-2E-CB
90-2B-34-13-EF-A6
50-E5-49-EC-BA-1C
90-2B-34-57-B1-6F
1C-6F-65-29-6D-F9
90-2B-34-13-1A-14
50-E5-49-E3-E2-F8
50-E5-49-3A-26-96
90-2B-34-5F-B0-21
90-2B-34-13-15-74
90-2B-34-18-43-BF
00-24-1D-0E-25-8D
python处理字符串还是很牛的,建议大家牢固掌握。
python按照固定长度分割字符串三个字符一组
def cut_text(text,lenth): textArr = re.findall('.{'+str(lenth)+'}', text) textArr.append(text[(len(textArr)*lenth):]) return textArr print(cut_text('123456789abcdefg',3)) ['123', '456', '789', 'abc', 'def', 'g']
代码二
>>> import re>>> string = '123456789abcdefg'>>> re.findall(r'.{3}', string)['123', '456', '789', 'abc', 'def']>>>
这篇文章就介绍到这,需要的朋友可以参考一下
122 在
学历:一种延缓就业设计,生活需求下的权衡之选中评论 工作几年后,报名考研了,到现在还没认真学习备考,迷茫中。作为一名北漂互联网打工人..123 在
Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..原梓番博客 在
在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..博主 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..1111 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..
Copyright·© 2019 侯体宗版权所有·
粤ICP备20027696号