Python编程实现tail-n查看日志文件的方法

yipeiwu_com6年前Python基础

1、函数实现

# -*- coding: utf-8 -*-

def tail(filename, n=10):
  with open(filename, "r") as f:
    lines = f.readlines()[-n:]

  return "".join(lines)

2、测试文件

poetry.txt 为了方便验证,每行之前加上行号数字

1. 虞美人·宜州见梅作
2.
3. 宋代:黄庭坚
4.
5. 天涯也有江南信。
6. 梅破知春近。
7. 夜阑风细得香迟。
8. 不道晓来开遍、向南枝。
9.
10. 玉台弄粉花应妒。
11. 飘到眉心住。
12. 平生个里愿杯深。
13. 去国十年老尽、少年心。
14.

3、测试结果

print(tail("poetry.txt", 5))

"""

n=1
14.


n=3
12. 平生个里愿杯深。
13. 去国十年老尽、少年心。
14.


n=5
10. 玉台弄粉花应妒。
11. 飘到眉心住。
12. 平生个里愿杯深。
13. 去国十年老尽、少年心。
14.
"""

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python中的global关键字的使用方法

摘要 global 标志实际上是为了提示 python 解释器,表明被其修饰的变量是全局变量。这样解释器就可以从当前空间 (current scope) 中读写相应变量...

Python求离散序列导数的示例

Python求离散序列导数的示例

有一组4096长度的数据,需要找到一阶导数从正到负的点,和三阶导数从负到正的点,截取了一小段。 394.0 388.0 389.0 388.0 388.0 392.0 39...

Flask之请求钩子的实现

请求钩子 通过装饰器为一个模块添加请求钩子, 对当前模块的请求进行额外的处理. 比如权限验证. 说白了,就是在执行视图函数前后你可以进行一些处理,Flask使用装饰器为我们提供了注册...

详解Python核心编程中的浅拷贝与深拷贝

详解Python核心编程中的浅拷贝与深拷贝

一、问题引出浅拷贝 首先看下面代码的执行情况: a = [1, 2, 3] print('a = %s' % a) # a = [1, 2, 3] b = a print('b =...

十个Python程序员易犯的错误

常见错误1:错误地将表达式作为函数的默认参数 在Python中,我们可以为函数的某个参数设置默认值,使该参数成为可选参数。虽然这是一个很好的语言特性,但是当默认值是可变类型时,也会导致一...