python:獲取文件最後N行

#獲取文件最後N行的函數
def tail(inputfile) :
  filesize = os.path.getsize(inputfile)
  blocksize = 1024
  dat_file = open(inputfile, 'r')
  last_line = ""
  if filesize > blocksize :
      maxseekpoint = (filesize // blocksize)
      dat_file.seek((maxseekpoint-1)*blocksize)
  elif filesize :
      #maxseekpoint = blocksize % filesize
      dat_file.seek(0, 0)
  lines =  dat_file.readlines()
  if lines :
      #last_line = lines[-1].strip()
      #最後兩行,N行就改數字,即可
      last_line = lines[-2:]
  #print "last line : ", last_line
  dat_file.close()
  return last_line
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章