[EMAIL PROTECTED] wrote: > Hey there, > kinda newbie question here. > i know how to read the lines of a txt file. > i know how to write a txt file. > > but how do i overwrite a line value with another value ? > > i mean, how do go to, say, line 3 of a text file and replace > what is written on line 3 with something else? > > thanks > <>< > You shouldn't try do "update in place" like that unless your file has fixed-length lines or records. Altering the length of an existing file isn't to be lightly undertaken, and even when possible will likely not be undertaken.
The classic way to approach this problem is to read the file as input, processing its contents and writing a new file, which eventually replaces the original in a fairly complex dance of renaming and deletion. In Python you can use a text file's readlines() method to build a list of all the lines in a file. That makes it quite easy to change numbered lines. Having modified the file's content in memory you can then create a new file using the writelines() method of a new file. The trick is to avoid losing both the old and the new files when a low-probability crash occurs. Since you are newbile (?) I would advise against paranoia - write your code without worrying about error handling. You'll be pleased to know that when you start to take a serious interest in error handling Python has everything you'll need. regards Steve -- Steve Holden +44 150 684 7255 +1 800 494 3119 Holden Web LLC http://www.holdenweb.com/ -- http://mail.python.org/mailman/listinfo/python-list