python文件文本处理:删除空白行,删除固定几行,删除固定列

话不多说,上代码

# coding=gbk
# clearBlankline
def clearBlankline(infile,outfile):
	infopen=open(infile,'r',encoding='utf-8')
	outopen=open(outfile,'w',encoding='utf-8')
	lines=infopen.readlines()
	for line in lines:
		if line.split():
			outopen.writelines(line)
		else:
			outopen.writelines("")
	infopen.close()
	outopen.close()

print("输入需要被处理的文件,该文件需要在本程序所在目录中")
clearBlankline(input(),"output1.txt")

# clearTheline
with open("output1.txt",encoding='utf-8') as fp_in:
	with open('out.txt', 'w',encoding='utf-8') as fp_out:
		fp_out.writelines(line for i, line in enumerate(fp_in)if i>2)

# clearnumber
file = open("out.txt", "r")  # 以只读模式读取文件
lines = []
for i in file:
    lines.append(i)  # 逐行将文本存入列表lines中
file.close()
new = []
for line in lines:                   # 逐行遍历
    p = 0                            # 定义计数指针
    for bit in line:                 # 对每行进行逐个字遍历
        if bit == ":":               # 遇到空格时进行处理
            new.append(line[8:-1])   # 将line中的8:11字段存入新列表new中,用于写入新的.txt中
            break                    # 处理完一行后跳出当前循环
        else:
            p = p + 1                # 如果bit不是冒号,指针加一
 
# 以写的方式打开文件,如果文件不存在,就会自动创建,如果存在就会覆盖原文件
print("输入处理后的文件名")
file_write_obj = open(input(), 'w')
for var in new:
    file_write_obj.writelines(var)
    file_write_obj.writelines('\n')
file_write_obj.close()

上源文件截图:
python文件文本处理:删除空白行,删除固定几行,删除固定列_第1张图片因为要对类似的文件进行比对查重,所以需要删除空行以及前面一些无用的信息,所以,生成的文件,应该是这样式的~
python文件文本处理:删除空白行,删除固定几行,删除固定列_第2张图片然后进行行匹配,是不是很方便~()
总结:python真是个好东西,期末复习,告辞!
python文件文本处理:删除空白行,删除固定几行,删除固定列_第3张图片

你可能感兴趣的:(python文件文本处理:删除空白行,删除固定几行,删除固定列)