有时我们会遇到需要按行读取文本的情况,但是当有空行时,使用replace无法将其去除
比如,我曾经在处理BIO文本时,遇到这种问题,这里做一个简单的记录
举个例子:

使用以下代码可以将上述文本处理为列表

# -*- coding: utf-8 -*-
# @Time : 2021/12/17 11:02
# @Author : hp
#文件路径
path = r'D:\Program Files\hp\文本.txt'
#打开文件
f=open(path,encoding='utf-8')
#创建空列表
text=[]
#读取全部内容 ,并以列表方式返回
lines = f.readlines()      
for line in lines:
    #如果读到空行,就跳过
    if line.isspace():
        continue
    else:
        #去除文本中的换行等等,可以追加其他操作
        line = line.replace("\n","")
        line = line.replace("\t","")
        #处理完成后的行,追加到列表中
        text.append(line)

仅仅处理空行只需要使用:

if line.isspace():
        continue

代码含义:如果是空值,就会不进行任何操作继续运行,即跳过空行。

更多推荐

python按照行来读取txt文件全部内容 ,去除空行,处理掉\t,\n后,以列表方式返回