如题,一个文件file里面有若干行,用python 怎样实现 打开文件 只读取倒数20行并打印出来?
原始版本(没有关闭文件,因为是在手机上敲的):
print('\n'.join(open('filename','r').readlines()[-20:]))
省内存的逐行读入:
lines = []
with open("filename", "r") as f:
while True:
tlines = f.readlines(100)
if not tlines:
break
tlineslen = len(tlines)
if tlineslen <= 20:
lines = lines[tlineslen - 20:] + tlines
break
lines = tlines[-20:]
print(lines)