📅  最后修改于: 2023-12-03 15:04:30.704000             🧑  作者: Mango
在Python编程中,我们常常需要读取文本文件中的一行或多行数据。Python中的linecache.getline()函数可以方便我们读取指定文件中的某一行数据,同时也支持缓存功能,提高程序的读取效率。
linecache.getline(filename, lineno, module_globals=None)
import linecache
# 读取指定文件的第5行数据
filename = 'test.txt'
line_number = 5
line_data = linecache.getline(filename, line_number)
print(line_data)
上述代码会读取'test.txt'文件的第5行数据,并将其打印出来。
由于多次读取同一文件的不同行数据,会导致文件频繁地被打开和关闭,影响效率。为了提高程序的读取效率,linecache.getline()函数提供了缓存功能。当读取同一文件的不同行数据时,linecache.getline()会自动从缓存中读取数据,而不是频繁地打开和关闭文件。
import linecache
# 读取指定文件的第5行数据
filename = 'test.txt'
line_number = 5
line_data = linecache.getline(filename, line_number)
print(line_data)
# 再次读取同一文件的第10行数据
line_number = 10
line_data = linecache.getline(filename, line_number)
print(line_data)
上述代码会先读取'test.txt'文件的第5行数据,然后再读取第10行数据。由于第5行数据已经被缓存,因此程序只需要从缓存中读取第10行数据即可。