При открытии и обработке файла вы всегда должны убедиться, что не пытаетесь читать больше строк, чем на самом деле в файле. Кроме того, вы делаете повторные звонки на readlines
, что довольно неэффективно. Попробуйте что-то вроде:
with open('fig.fig') as o:
lines = o.readlines()
n=6
for i in range(1, min(len(o), n*2), 2):
print(lines[i].replace(' ', ''))
Это будет читать нечетные пронумерованные строки, вплоть до п * 2, или максимальное количество строк в файле, в зависимости от того, что меньше. Вы также должны убедиться, что файл существует (один способ - использовать os.path.isfile('fig.fig')
или обернуть все в блок try.