Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Continue reading file from the position where it was left

Tags:

python

I have to read a file multiple times in which some error info is appended everyday. Is there a way to start reading the file from the point it was left previous day instead of start reading from beginning again? I don't have permission to write in file. so marking the end is out of option. One possible way i got is to store the cursor position and then seek to that position next time.. Is there any other way through python?

like image 788
anshul Avatar asked Dec 20 '22 02:12

anshul


1 Answers

You can use the python tell file method to see what position you are in a file before you close it and the seek method to return to that position after you open it again.


Example:

Given a file foo with the contents

edas
agfa
agf
fgfgfg

You can return to a given position as follows:

>>> f = open('foo')
>>> f.tell()
0
>>> f.readline()
'edas\n'
>>> f.tell()
5
>>> f.close()
>>> f = open('foo')
>>> f.tell()
0
>>> f.seek(5)
>>> f.readline()
'agfa\n'
like image 183
Eric Appelt Avatar answered Dec 26 '22 12:12

Eric Appelt