python按行读取文件取消空白行_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去掉空白行的多种实现代码的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 三菱fx5u编程手册_FX5U系列PLC
- 下一篇: websocket python爬虫_p