I think I found a bug in Python 2.6.4 (in the inspect module)

inhahe inhahe at gmail.com
Tue Dec 29 17:10:56 EST 2009


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.



More information about the Python-list mailing list