Newbie Text Processing Question

James Stroud jstroud at
Wed Oct 5 05:23:23 CEST 2005

You can edit a file in place, but it is not applicable to what you are doing. 
As soon as you insert the first "<biblio>", you've shifted everything 
downstream by those 8 bytes. Since they map to a physically located blocks on 
a physical drive, you will have to rewrite those blocks. If it is a big file 
you can do something conceptually similar to piping, where the original file 
is read in line by line and a new file is created:

afile = open("somefile.xml")
newfile = open("somenewfile.xml", "w")
for aline in afile:
  if tests_positive(aline):


On Tuesday 04 October 2005 20:13, Gregory Piñero wrote:
> That's how Python works. You read in the whole file, edit it, and write it
> back out. As far as I know there's no way to edit a file "in place" which
> I'm assuming is what you're asking?

James Stroud
UCLA-DOE Institute for Genomics and Proteomics
Box 951570
Los Angeles, CA 90095

More information about the Python-list mailing list