阅读Python中的每四行

我有一个文件,我试图每隔四行读取(并写入另一个文件).我正在使用的解决方案没有给出预期的结果.

为sample.txt

一号线
2号线
3号线
4号线
LINE5
LINE6
line7
line8
line9
line10

script.py

from itertools import islice
with open('sample.txt') as fin, open('output.txt','w') as fout:
         fout.writelines(islice(fin,None,None,4))

现在输出文件给我line1,line5,line9而不是line4,line8.

我将如何改变这一点以获得理想的结果?

最佳答案 你快到了.
islice附带一个启动参数.在您的情况下,它是第二个,您已设置为无.试试这个:

fout.writelines(islice(fin,3,None,4)) # line with index 3 is the fourth line
点赞