我正在尝试创建一个打开文件(filename
)的函数,打印与前一行不同的每一行文本(始终写入第一行)。每个输出行都应以其在输入文件中的行号为前缀。
我想出了以下内容,无论它是否是重复行,它都会始终打印文本的最后一行:
def squeeze(filename):
file = open(filename, 'r')
prevline = ''
line_num = 0
for line in file:
line_num = line_num + 1
if line != prevline:
print ('%3d - %s'%(line_num, line))
prevline = line
filename = 'Test.txt'
squeeze(filename)
我似乎无法弄清楚我的代码中的缺陷在哪里以及解决这个问题的原因是什么?
谢谢大家,都很有帮助,用过打勾了!