write to log file
Hans Nowak
hans at zephyrfalcon.org
Mon Sep 29 16:43:45 EDT 2003
Tom wrote:
> Hi,
> I have a log file and of course I want to add the new information to the
> end of that log file. Unfortunately I always delete the old information
> and only append the current info.
>
> Right now I do it like this:
> I call a module which consists of a class and a function. It actually
> doesn't matter, but I just included it for the sake of completeness.
> The module looks like this:
>
> class log_C:
> def errorlog(self, filename, Data, d):
> LogFile = file(filename, 'w')
> ErrorInfo = Data[d+1]
> LogFile.write(ErrorInfo)
> LogFile.close()
>
> How can I add the new info without deleting the old info?
> I tried the modes 'a' and 'a+' but they both didn't work. Actually the
> data was totally unreadable! It was kind of messed up. I don't know why.
The following works for me:
>>> f = open('c:/temp/test.txt', 'w')
>>> for x in ('fee', 'fi', 'fum', 'fo'):
... print >> f, x
...
>>> f.close()
>>> g = open('c:/temp/test.txt', 'a+r')
>>> print >> g, 'slag-blah'
>>> g.close()
>>> file('c:/temp/test.txt').readlines()
['fee\n', 'fi\n', 'fum\n', 'fo\n', 'slag-blah\n']
HTH,
--
Hans (hans at zephyrfalcon.org)
http://zephyrfalcon.org/
More information about the Python-list
mailing list