python读取文件末尾N行

2023-01-31 01:01:47 文件 读取 末尾
# -*- coding: cp936 -*-
import os,sys,re

def lastline():
    global pos
    
    while True:
        pos = pos - 1
        try:
            f.seek(pos, 2)  #从文件末尾开始读
            if f.read(1) == '\n':
                break
        except:     #到达文件第一行,直接读取,退出
            f.seek(0, 0)        
            print f.readline().strip()
            return
    
    print f.readline().strip()


if __name__ == "__main__":
    
    f = open('1.txt','rb')  #‘r’的话会有两个\n\n  
    pos = 0   
    for line in range(2):#需要倒数多少行就循环多少次
        lastline()   
    f.close()


# -*- coding: cp936 -*-
import os,sys,re

def lastline():
    global pos
   
    while True:
        pos = pos - 1
        try:
            f.seek(pos, 2)  #从文件末尾开始读
            if f.read(1) == '\n':
                break
        except:     #到达文件第一行,直接读取,退出
            f.seek(0, 0)       
            print f.readline().strip()
            return
   
    print f.readline().strip()


if __name__ == "__main__":
   
    f = open('1.txt','rb')  #‘r’的话会有两个\n\n 
    pos = 0  
    for line in range(2):#需要倒数多少行就循环多少次
        lastline()  
    f.close()

相关文章