我正在嘗試使用Python提取輸入文件的兩行之間的一些數據。 infile被設置爲使得有一條線-START-在那裏我需要接下來的10行代碼,當且僅當-END-條件發生在下一個-START-之前。 -START行在-END-之前出現多次。我的意思繼承人一般的例子:如果終止行存在,使用Python提取數據
等等
等等
-START-
10行我不需要
等等
-START-
10行,我需要
等等
等等
-END-
blah
blah
-START-
個 10行我不需要
等等
-START-
....等等等等
到目前爲止,我只能夠得到-START- + 10線每次迭代,但是在指定條件時只有在-END-條件在另一個-START條件之前時才寫入。我是一個新手,所以任何幫助將不勝感激。
獎勵:我需要將每個START + 10lines塊打印到新的/唯一的outfile中。 但我還沒有真正玩過,所以請隨時忽略這部分。
繼承人的代碼,我有打印-START- + 10行:
in = open('input.log')
out = open('output.txt', 'a')
lines = in.readlines()
for i, line in enumerate(lines):
if (line.find('START')) > -1:
out.write(line)
out.write(lines[i + 1])
out.write(lines[i + 2])
out.write(lines[i + 3])
out.write(lines[i + 4])
out.write(lines[i + 5])
out.write(lines[i + 6])
out.write(lines[i + 7])
out.write(lines[i + 8])
out.write(lines[i + 9])
out.write(lines[i + 10])
它總是正好十行嗎?或者它只是「儘管它在START和END之間,假設它們之間沒有其他START」?哪些終止因素(END或10行)最重要? –