python字符串按固定长度拆分

简介:

 今天有同事给了一堆mac地址,需要更改成一定格式,如mac='902B345FB021'改为mac='90-2B-34-5F-B0-21',写了一个小python脚本,帮助处理了。其实就是字符串的按照固定长度拆分。

文件mac.txt中的mac地址一堆:
50E549E32ECB
902B3413EFA6
50E549ECBA1C
902B3457B16F
1C6F65296DF9
902B34131A14
50E549E3E2F8
50E5493A2696
902B345FB021
902B34131574
实现的方法有两种,如下:
 
  1. 方法一: 
  2. A = open('mac.txt','r'
  3. a = A.readlines() 
  4. for aa in a: 
  5.     b = list(aa.strip()) 
  6.     c='' 
  7.     for i in range(len(b)): 
  8.         if i !=0
  9.             if i%2 == 0
  10.                 c=c+'-'+b[i] 
  11.             else
  12.                 c=c+b[i] 
  13.         else
  14.             c=c+b[i] 
  15.     print c 
  16. A.close() 
  17.  
  18. 这种方法比较简陋,刚开始想到这个。 
  19.  
  20. 方法二: 
  21. import re 
  22. A = open('mac.txt','r'
  23. a = A.readlines() 
  24. for aa in a: 
  25.     b=re.findall(r'.{2}',aa) 
  26.     c='-'.join(b) 
  27.     print c 
  28. A.close() 
  29. 这种就是用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



本文转自 lover00751CTO博客,原文链接:http://blog.51cto.com/wangwei007/1147731,如需转载请自行联系原作者

相关文章
|
6月前
|
Python
Python中的f-string:更优雅的字符串格式化
Python中的f-string:更优雅的字符串格式化
391 100
|
6月前
|
开发者 Python
Python中的f-string:高效字符串格式化的利器
Python中的f-string:高效字符串格式化的利器
548 99
|
6月前
|
Python
Python中的f-string:更优雅的字符串格式化
Python中的f-string:更优雅的字符串格式化
|
6月前
|
开发者 Python
Python f-strings:更优雅的字符串格式化技巧
Python f-strings:更优雅的字符串格式化技巧
|
6月前
|
开发者 Python
Python f-string:高效字符串格式化的艺术
Python f-string:高效字符串格式化的艺术
|
6月前
|
Python
使用Python f-strings实现更优雅的字符串格式化
使用Python f-strings实现更优雅的字符串格式化
|
5月前
|
存储 Java 索引
(Python基础)新时代语言!一起学习Python吧!(二):字符编码由来;Python字符串、字符串格式化;list集合和tuple元组区别
字符编码 我们要清楚,计算机最开始的表达都是由二进制而来 我们要想通过二进制来表示我们熟知的字符看看以下的变化 例如: 1 的二进制编码为 0000 0001 我们通过A这个字符,让其在计算机内部存储(现如今,A 字符在地址通常表示为65) 现在拿A举例: 在计算机内部 A字符,它本身表示为 65这个数,在计算机底层会转为二进制码 也意味着A字符在底层表示为 1000001 通过这样的字符表示进行转换,逐步发展为拥有127个字符的编码存储到计算机中,这个编码表也被称为ASCII编码。 但随时代变迁,ASCII编码逐渐暴露短板,全球有上百种语言,光是ASCII编码并不能够满足需求
240 4
|
6月前
|
数据采集 机器学习/深度学习 人工智能
Python:现代编程的首选语言
Python:现代编程的首选语言
672 102
|
6月前
|
数据采集 机器学习/深度学习 算法框架/工具
Python:现代编程的瑞士军刀
Python:现代编程的瑞士军刀
405 104
|
6月前
|
人工智能 自然语言处理 算法框架/工具
Python:现代编程的首选语言
Python:现代编程的首选语言
315 103

推荐镜像

更多