python 怎样实现 打开文件 只读取倒数20行并打印出来?

如题,一个文件file里面有若干行,用python 怎样实现 打开文件 只读取倒数20行并打印出来?

阅读 6k
1 个回答

原始版本(没有关闭文件,因为是在手机上敲的):

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)
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题