Creating logged functions using decorators
Nathan Harmston
ratchetgrid at googlemail.com
Sat Jul 7 14:47:12 EDT 2007
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
More information about the Python-list
mailing list