python删除文本中行数标签的方法

yipeiwu_com6年前Python基础

问题描述:

我们在网上下载或者复制别人代码的时候经常会遇到下载的代码中包含行数标签的情况。如下图:

这些代码中包含着行数如1.,2.等,如果我们想直接运行或者copy代码需要自己手动的删除这些标签。既然学了python,我们写一段脚本来处理它吧。

思路分析:

首先,我们逐行的读取文本。

利用正则表达式,可以顺利地匹配出所有的这些标签以及后面跟随的“\t”,正则表达式为:“\d+.\t”。

接着我们将匹配的结果在这一行中删除它,使用string模块的replace方法,将匹配的结果用‘'代替。

最后,我们保存每次删除了行数标签的结果行,然后将这些行写入原文本。注意,以w的方式打开文本会删除原文本内容。

代码:

# -*- coding:utf-8 -*- 
import re 
import os 
import sys 
reload(sys) 
sys.setdefaultencoding('utf-8') 
 
ls = os.linesep 
label_regex = r'\d+.\t' 
content = [] 
for line in open('source.txt', 'r'): 
  mm = re.search(label_regex, line) 
  if mm: 
    mm = mm.group() 
    content.append(line.replace(mm, '').rstrip()) 
  else: 
    break 
f = open('source.txt', 'w') 
f.writelines(['%s%s' % (x,ls) for x in content]) 

结果:

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Ubuntu下使用python读取doc和docx文档的内容方法

读取docx文档 使用的包是python-docx 1. 安装python-docx包 sudo pip install python-docx 2. 使用python-docx...

python常用web框架简单性能测试结果分享(包含django、flask、bottle、tornado)

测了一下django、flask、bottle、tornado 框架本身最简单的性能。对django的性能完全无语了。 django、flask、bottle 均使用gunicorn+g...

python、PyTorch图像读取与numpy转换实例

Tensor转为numpy np.array(Tensor) numpy转换为Tensor torch.Tensor(numpy.darray) PIL.Image.Image转换成nu...

python实现判断数组是否包含指定元素的方法

本文实例讲述了python实现判断数组是否包含指定元素的方法。分享给大家供大家参考。具体如下: python判断数组是否包含指定的元素的方法,直接使用in即可,python真是简单易懂...

Python turtle画图库&&画姓名实例

Python turtle画图库&&画姓名实例

*****看一下我定义的change()和run()函数****** 绘图坐标体系: 作用:设置主窗体的大小和位置 turtle.setup(width, height, sta...