On Apr 12, 8:14 am, "SamG" <[EMAIL PROTECTED]> wrote: > How could i make, from inside the program, to have the stdout and > stderr to be printed both to a file as well the terminal(as usual).
One way would be to create a custom class which has the same methods as the file type, and held a list of file-like objects to write to. e.g. class multicaster(object): def __init__(self, filelist): self.filelist = filelist def write(self, str): for f in self.filelist: f.write(str) def writelines(self, str_list): #etc Then assign stdout and stderr to a new instance of one of these objects: mc = multicaster([sys.stdout, sys.stderr, log_file]) sys.stdout = mc sys.stderr = mc HTH -- http://mail.python.org/mailman/listinfo/python-list