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

yipeiwu_com5年前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设计】。

相关文章

使用 Python 处理3万多条数据只要几秒钟

使用 Python 处理3万多条数据只要几秒钟

应用场景:工作中经常遇到大量的数据需要整合、去重、按照特定格式导出等情况。如果用 Excel 操作,不仅费时费力,还不准确,有么有更高效的解决方案呢? 本文以17个 txt 文本,3万多...

使用豆瓣提供的国内pypi源 原创

pip使用过程中的痛苦,大家相必都已经知道了,目前豆瓣提供了国内的pypi源,源包相对会略有延迟,但不影响基本使用。 pip install some-package -i https:...

在Python的Flask框架下使用sqlalchemy库的简单教程

flask中的sqlalchemy 相比于sqlalchemy封装的更加彻底一些 , 在一些方法上更简单 首先import类库: 在CODE上查看代码片派生到我的代码片 <...

Python语言异常处理测试过程解析

这篇文章主要介绍了Python语言异常处理测试过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 (一)异常处理 1.捕获所有异...

Python断言assert的用法代码解析

在开发一个程序时候,与其让它运行时崩溃,不如在它出现错误条件时就崩溃(返回错误)。这时候断言assert 就显得非常有用。 python assert断言是声明布尔值必须为真的判定,如果...