我正在使用for循环来读取文件,但我只想读取特定的行,比如第26行和第30行.是否有任何内置功能来实现这一目标?
谢谢
以下代码是否有其他替代方法:
startFromLine = 141978 # or whatever line I need to jump to
urlsfile = open(filename, "rb", 0)
linesCounter = 1
for line in urlsfile:
if linesCounter > startFromLine:
DoSomethingWithThisLine(line)
linesCounter += 1
Run Code Online (Sandbox Code Playgroud)
如果我正在(~15MB)使用未知但不同长度的行处理一个巨大的文本文件,并且需要跳转到我事先知道的特定行?当我知道我至少可以忽略文件的前半部分时,我会逐个处理它们.寻找更优雅的解决方案,如果有的话.
我正在迭代文件的行enumerate(),有时需要在特定的文件行开始迭代,所以我尝试了testfile.seek(),例如,如果我想在第10行再次开始迭代文件,那么testfile.seek(10):
test_file.seek(10)
for i, line in enumerate(test_file):
…
Run Code Online (Sandbox Code Playgroud)
然而,test_file始终保持从第一行开始迭代0.我可能做错了什么?为什么不seek()工作?任何更好的实现也将受到赞赏.
提前谢谢你,一定会upvote /接受答复