Skip to content

linecache Module

The linecache module allows efficient retrieval of individual lines from Python source files, caching lines to avoid repeated file I/O.

Complexity Reference

Operation Time Space Notes
getline() first access O(n) O(n) Loads entire file into cache; n = file lines
getline() cached O(1) O(1) Returns cached line
checkcache() O(k) O(1) k = cached files; checks mtime for invalidation
clearcache() O(1) O(1) Clear all cached files

Getting Lines from Files

Retrieve Single Lines

import linecache

# Get line - O(1) after caching
line = linecache.getline('myfile.py', 5)
print(line)

# Get multiple lines - O(k) where k = lines
for i in range(1, 4):
    print(linecache.getline('myfile.py', i))

Cache Management

Clearing Cache

import linecache

# Clear cache - O(1)
linecache.checkcache()

# Clear specific file - O(1)
linecache.checkcache('myfile.py')