:mod:`linecache` --- Random access to text lines
Source code: :source:`Lib/linecache.py`
The :mod:`linecache` module allows one to get any line from a Python source file, while attempting to optimize internally, using a cache, the common case where many lines are read from a single file. This is used by the :mod:`traceback` module to retrieve source lines for inclusion in the formatted traceback.
The :func:`tokenize.open` function is used to open files. This function uses :func:`tokenize.detect_encoding` to get the encoding of the file; in the absence of an encoding token, the file encoding defaults to UTF-8.
The :mod:`linecache` module defines the following functions:
Example:
>>> import linecache
>>> linecache.getline(linecache.__file__, 8)
'import sys\n'