10.9. linecache
— 随机读写文本行¶
源代码: Lib/linecache.py
The linecache
module allows one to get any line from any 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 traceback
module
to retrieve source lines for inclusion in the formatted traceback.
linecache
模块定义了下列函数:
-
linecache.
getline
(filename, lineno[, module_globals])¶ 从名为 filename 的文件中获取 lineno 行,此函数绝不会引发异常 — 出现错误时它将返回
''
(所有找到的行都将包含换行符作为结束)。如果名为 filename 的文件未找到,该函数将在模块搜索路径
sys.path
中查找它,在此之前会先在 module_globals 中检查 PEP 302__loader__
,以涵盖模块是从 zip 文件或其他非文件系统导入源导入的情况。2.5 新版功能: The module_globals parameter was added.
-
linecache.
checkcache
([filename])¶ 检查缓存有效性。 如果缓存中的文件在磁盘上发生了改变,而你需要更新后的版本即可使用此函数。 如果省略了 filename,它会检查缓存中的所有条目。
示例:
>>> import linecache
>>> linecache.getline('/etc/passwd', 4)
'sys:x:3:3:sys:/dev:/bin/sh\n'