On Jul 7, 8:47 pm, "Nathan Harmston" <[EMAIL PROTECTED]> wrote: > Hi, > > I m thinking about writing some code which logs the input and output > of a function/script and stores it in a database using sqlalchemy > (although I havent started on this yet). I want to do this via a > decorator ( I think this is the best way ). > > def log(fn): > def newfn(*args): > print datetime.date.today() > print __file__ > print fn.__name__ > print args > return fn(*args) > return newfn > > @log > def doAnalysis(a, b): > print a, b > return a + b > > doAnalysis(3, 7) > > I can access the arguments passed to the "logged" function, but is > there anyway I can capture the output of the function i.e. 10. > > Many Thanks in advance, > > Nathan
Using my own decorator module (http://www.phyast.pitt.edu/~micheles/ python/documentation.html) that would be from decorator import decorator @decorator def log(f, *args, **kw): result = f(*args, **kw) print args, kw, result return result Michele Simionato -- http://mail.python.org/mailman/listinfo/python-list