利用re处理数据

re模块为Python提供正则表达式功能,我们可以用它来处理数据

大多数时候我们用Python读取文件数据读进来都是字符串,想要提取里面想要的数据用正则表达式是个很不错的手段

下面是一个从读取数据中提取整数的例子

import re

lines = ['node:2 edges:1\n', '455 21']
res = re.findall(r'\d+', lines[0])
res = list(map(int, res))
print(lines)
print(res)

lines是两组字符串(我们平时用readlines函数读取文档时也是这个格式)

利用re模块的findall函数,结合r'\d+',我们可以将第一组字符串中的数字提取出来,并以数组的形式存到res中

 不只是一位数,多位数也可以成功提取

import re

lines = ['node:2 edges:1\n', '455 21']
res = re.findall(r'\d+', lines[1])
res = list(map(int, res))
print(lines[1])
print(res)

 如果想提取其它类型的数据,可以去了解re模块中的正则表达式,当然在Python中这不算是一个处理数据的好方法,但是一个值得学习的方法,毕竟它的使用结合了正则表达式的学习

猜你喜欢

转载自www.cnblogs.com/dgwzq/p/11883586.html