linecache recupera uma linha específica sem exigir que o chamador gerencie a leitura repetida do arquivo. O módulo sustenta partes de traceback e ferramentas que mostram contexto de código-fonte.

Recupere uma linha específica

import linecache
from pathlib import Path
from tempfile import TemporaryDirectory

with TemporaryDirectory() as folder:
    path = Path(folder, "sample.py")
    path.write_text("first = 1\nsecond = 2\n", encoding="utf-8")
    assert linecache.getline(str(path), 2) == "second = 2\n"
    linecache.clearcache()

Entenda falhas silenciosas

getline() retorna uma string vazia para linha inexistente ou erro de leitura, em vez de propagar várias exceções comuns. Se o aplicativo precisa distinguir arquivo ausente de linha inválida, valide o caminho e o intervalo separadamente.

Atualize o cache após alterações

Chame checkcache(filename) quando outro processo ou trecho do programa puder modificar o arquivo. clearcache() descarta tudo. Não use esse cache como armazenamento geral nem pressuponha conteúdo atual sem uma política de invalidação.

Continue estudando

Leia também depuração de Python com PDB. A documentação oficial do Python, consultada em 22 de julho de 2026, descreve getline, invalidação e suporte a loaders de módulos.