python去掉空白行的多种实现代码

yipeiwu_com6年前Python基础

测试代码 jb51.txt

1:www.jb51.net

2:www.jb51.net
3:www.jb51.net
4:www.jb51.net
5:www.jb51.net
6:www.jb51.net

7:www.jb51.net
8:www.jb51.net
9:www.jb51.net
10:www.jb51.net

11:www.jb51.net
12:www.jb51.net
13:www.jb51.net


14:www.jb51.net
15:www.jb51.net

16:www.jb51.net

python代码

代码一

# -*- coding: utf-8 -*-
'''
python读取文件,将文件中的空白行去掉
'''
def delblankline(infile, outfile):
 infopen = open(infile, 'r',encoding="utf-8")
 outfopen = open(outfile, 'w',encoding="utf-8")

 lines = infopen.readlines()
 for line in lines:
  if line.split():
   outfopen.writelines(line)
  else:
   outfopen.writelines("")

 infopen.close()
 outfopen.close()

delblankline("jb51.txt", "o.txt")

代码二

# -*- coding: utf-8 -*-
'''
python读取文件,将文件中的空白行去掉
'''
def delblankline(infile, outfile):
 infopen = open(infile, 'r',encoding="utf-8")
 outfopen = open(outfile, 'w',encoding="utf-8")

 lines = infopen.readlines()
 for line in lines:
  line = line.strip()
  if len(line)!=0:
   outfopen.writelines(line)
   outfopen.write('\n')
 infopen.close()
 outfopen.close()

delblankline("jb51.txt", "o2.txt")

代码三:python2

#coding:utf-8 
import sys 
def delete(filepath): 
 f=open(filepath,'a+') 
 fnew=open(filepath+'_new.txt','wb')   #将结果存入新的文本中 
 for line in f.readlines():         #对每一行先删除空格,\n等无用的字符,再检查此行是否长度为0 
  data=line.strip() 
  if len(data)!=0: 
   fnew.write(data) 
   fnew.write('\n') 
 f.close() 
 fnew.close() 
 
 
if __name__=='__main__': 
 if len(sys.argv)==1: 
  print u"必须输入文件路径,最好不要使用中文路径" 
 else: 
  delete(sys.argv[1]) 

效果图

代码解析:

1. Python split()通过指定分隔符对字符串进行切片,返回分割后的字符串列表。str.split()分隔符默认为空格。

2. 函数 writelines(list)

  函数writelines可以将list写入到文件中,但是不会在list每个元素后加换行符,所以如果想每行都有换行符的话需要自己再加上。

  例如:for line in lines:

       outfopen.writelines(line+"\n")

3. .readlines() 自动将文件内容分析成一个行的列表,该列表可以由 Python 的 for ... in ... 结构进行处理。

相关文章

python字符串中匹配数字的正则表达式

Python 正则表达式简介 正则表达式是一个特殊的字符序列,它能帮助你方便的检查一个字符串是否与某种模式匹配。 Python 自1.5版本起增加了re 模块,它提供 Perl 风格...

Python协程操作之gevent(yield阻塞,greenlet),协程实现多任务(有规律的交替协作执行)用法详解

本文实例讲述了Python 协程操作之gevent(yield阻塞,greenlet),协程实现多任务(有规律的交替协作执行)用法。分享给大家供大家参考,具体如下: 实现多任务:进程消耗...

python获取目录下所有文件的方法

本文实例讲述了python获取目录下所有文件的方法。分享给大家供大家参考。具体分析如下: os.walk() 函数声明:walk(top,topdown=True,onerror=Non...

Python使用CMD模块更优雅的运行脚本

本文实例讲述了Python使用CMD模块更优雅的运行脚本的方法。分享给大家供大家参考。具体分析如下: 平时由于经常给测试人员调试一些东西,虽然写了一些脚本,感觉还是不方便。 python...

Python UnicodeEncodeError: 'gbk' codec can't encode character 解决方法

使用Python写文件的时候,或者将网络数据流写入到本地文件的时候,大部分情况下会遇到:UnicodeEncodeError: 'gbk' codec can't encode char...