我有这样的代码:
#opened file f
goto_line = num_lines #Total number of lines
while not found:
line_str = next(itertools.islice(f, goto_line - 1, goto_line))
goto_line = goto_line/2
#checks for data, sets found to True if needed
line_str 第一遍是正确的,但之后的每一遍都在读取不同的行。
例如,goto_line 从 1000 开始。它读取第 1000 行就好了。然后下一个循环,goto_line 是 500,但它不读取第 500 行。它读取接近 1000 的一些行。
我正在尝试读取大文件中的特定行,而无需阅读更多内容。有时它向后跳到一条线,有时向前跳。
我确实尝试过 linecache,但我通常不会在同一个文件上多次运行此代码。