Вот программа на Python, которая считывает последние nстроки файла:
Метод 1: использование функций seekи splitlines
def read_last_n_lines(filename, n):
with open(filename, 'r') as file:
lines = file.read().splitlines()
return lines[-n:]
# Usage
filename = 'example.txt' # Replace with your file's name
n = 5 # Number of lines to read
last_lines = read_last_n_lines(filename, n)
for line in last_lines:
print(line)
Метод 2: использование seek, readlinesи нарезки
def read_last_n_lines(filename, n):
with open(filename, 'r') as file:
file.seek(0, 2)
lines = file.readlines()
return lines[-n:]
# Usage is the same as Method 1
Метод 3. Использование dequeдля эффективного извлечения строк
from collections import deque
def read_last_n_lines(filename, n):
with open(filename, 'r') as file:
lines = deque(file, n)
return list(lines)
# Usage is the same as Method 1
Метод 4. Использование модуля linecache
import linecache
def read_last_n_lines(filename, n):
lines = []
with open(filename, 'r') as file:
for line in linecache.getlines(filename)[-n:]:
lines.append(line.rstrip('\n'))
return lines
# Usage is the same as Method 1
Это четыре разных метода чтения последних nстрок файла с использованием Python.