之前一直再找一个可以实现倒序显示文件最后几行的内容,并且最后一行的内容最先显示,找了好多都没有找到,要么是python2的环境,要么就是和我想要的不一样,要么就是代码复杂,直到找到一篇文章(原文章地址:http://t.csdn.cn/KYJpq)并加以改动实现了上述功能。
我的运行环境:
python 3.8
django 3.2
废话不多说,上代码
#倒序读取日志
from collections import deque
file = open('logs/djlog.log', "r", encoding='utf-8')
# 读取日志的最后30行日志
output = deque(file, 30)
list1 = list(output)
# 将序列倒序排序,也就是将日志的最后一行显示在页面第一行上
list1.reverse()
#为了方便查看,页面上的每一行换行显示
list1= [c.replace('\n','<br>') for c in list1]
print(list1)
for item in list1:
print(item, end=' ')
效果图如下(使用django框架通过ajax实现在页面动态显示)