Galvanize
Несмотря на break, выдает оффсет последней строки. Подозреваю, что дело в работе цикла for. Подскажите как решить проблему?
Спасибо.

Дело в итераторе. Когда файл используется через итератор, тогда tell выдаёт не то, что ты ожидаешь. Используй readline()

Развёрнутый ответ, для нуждающихся