我正在使用for循环读取文件,但是我只想读取特定的行,例如26号和30号行。是否有任何内置功能可实现此目的?
如果要读取的文件很大,并且你不想一次读取内存中的整个文件:
fp = open("file") for i, line in enumerate(fp): if i == 25: # 26th line elif i == 29: # 30th line elif i > 29: break fp.close()
注意,i == n-1对于nth行。
i == n-1
在Python 2.6或更高版本中:
with open("file") as fp: for i, line in enumerate(fp): if i == 25: # 26th line elif i == 29: # 30th line elif i > 29: break