On 12/29/09, inhahe <inh...@gmail.com> wrote: > Python 2.6.4 (r264:75708, Oct 26 2009, 08:23:19) [MSC v.1500 32 bit (Intel)] > on > win32 > Type "help", "copyright", "credits" or "license" for more information. >>>> import inspect >>>> def a(b=1): pass > ... >>>> inspect.getargvalues(a) > Traceback (most recent call last): > File "<stdin>", line 1, in <module> > File "C:\Python26\lib\inspect.py", line 816, in getargvalues > args, varargs, varkw = getargs(frame.f_code) > AttributeError: 'function' object has no attribute 'f_code' >>>> dir(a) > ['__call__', '__class__', '__closure__', '__code__', '__defaults__', > '__delattr_ > _', '__dict__', '__doc__', '__format__', '__get__', '__getattribute__', > '__globa > ls__', '__hash__', '__init__', '__module__', '__name__', '__new__', > '__reduce__' > , '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', > '__subcla > sshook__', 'func_closure', 'func_code', 'func_defaults', 'func_dict', > 'func_doc' > , 'func_globals', 'func_name'] >>>> > > So i'm guessing that the attribute has been changed from func_code to > f_code but the inspect module wasn't updated to reflect that.
Please read the documentation for inspect.getargvalues: """ inspect.getargvalues(frame) Get information about arguments passed into a particular frame. A tuple of four things is returned: (args, varargs, varkw, locals). args is a list of the argument names (it may contain nested lists). varargs and varkw are the names of the * and ** arguments or None. locals is the locals dictionary of the given frame. Changed in version 2.6: Returns a named tuple ArgInfo(args, varargs, keywords, locals). """ HTH, Daniel -- Psss, psss, put it down! - http://www.cafepress.com/putitdown -- http://mail.python.org/mailman/listinfo/python-list