Python3.5 处理文本txt,删除不需要的行方法

yipeiwu_com6年前Python基础

这个问题是在问答里看到的,给了回答顺便在这里贴一下代码:

#coding:utf-8
#python3.5.1

import re

file_path0 = r'G:\任务20180312\test/handle1.txt'

f = open(file_path0)
#读取全部内容
lines = f.readlines() #lines在这里是一个list
#获取行数
nums = len(lines)
#建立一个空列表
rows_get = []
#循环行数
for i in range(nums):
 line = lines[i] #line类型为str
 #开始用正则得到数字部分,并判断
 #给定正则规则
 p = r',(.+)' #发现每行取逗号后面部分就行
 #编译正则
 pattern = re.compile(p)
 try:
  #查找,用try判断是因为还存在空行
  number = re.findall(pattern,line)[0] #这里number类型 str
  #去除空格
  number = number.strip()
  #转换int,便于比较
  number = float(number)
  #判断数字小于9.500和大于12.500的行删除
  if number <9.500 or number>12.500:
   pass
  else:
   rows_get.append(i)

 except:
  continue
#rows_get使我们所需要的数据
print(rows_get)

#建立空字符串
text = ''
for x in rows_get:
 #得到想要的每行数据
 row = lines[x]
 #叠加
 text = text + row

with open(r'G:\任务20180312\test/handle1_get.txt','w') as f:
 f.write(text)

结果如下图:

Python3.5 处理文本txt,删除不需要的行

望有所帮助,望采纳!!

以上这篇Python3.5 处理文本txt,删除不需要的行方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Perl中著名的Schwartzian转换问题解决实现

Perl中著名的Schwartzian转换,其产生背景主要涉及到排序问题: 比如说,根据文件名以字母顺序排序,代码如下: 复制代码 代码如下: use strict;  us...

使用基于Python的Tornado框架的HTTP客户端的教程

由于tornado内置的AsyncHTTPClient功能过于单一, 所以自己写了一个基于Tornado的HTTP客户端库, 鉴于自己多处使用了这个库, 所以从项目中提取出来, 写成一个...

python3大文件解压和基本操作

先说下:所谓的大文件并不是压缩文件有多大,几十兆的文件而是解压后几百兆。其中就遇到解压不成功的情况.、读小文件时成功,大文件时失败等 def unzip_to_txt_plus(z...

Python 基于wxpy库实现微信添加好友功能(简洁)

Python 基于wxpy库实现微信添加好友功能(简洁)

Github:https://github.com/Lyo-hub/wxpy_AddFriend 本程序为基于wxpy库实现的。 1.打开cmd导入一下库。 2.修改库文件中ad...

python 中文字符串的处理实现代码

>>> teststr = '我的eclipse不能正确的解码gbk码!' >>> teststr '\xe6\x88\x91\xe7\x9a\x84...