]> granicus.if.org Git - python/commitdiff
#6905: use better exception messages in inspect when the argument is of the wrong...
authorGeorg Brandl <georg@python.org>
Fri, 18 Sep 2009 09:14:52 +0000 (09:14 +0000)
committerGeorg Brandl <georg@python.org>
Fri, 18 Sep 2009 09:14:52 +0000 (09:14 +0000)
Lib/inspect.py

index 21da7d4c946bab992dae49a90f9a3e5d87fc526c..8eeb05d306309ff6e0e59247486b4249ca6935c3 100644 (file)
@@ -402,12 +402,12 @@ def getfile(object):
     if ismodule(object):
         if hasattr(object, '__file__'):
             return object.__file__
-        raise TypeError('arg is a built-in module')
+        raise TypeError('%r is a built-in module' % object)
     if isclass(object):
         object = sys.modules.get(object.__module__)
         if hasattr(object, '__file__'):
             return object.__file__
-        raise TypeError('arg is a built-in class')
+        raise TypeError('%r is a built-in class' % object)
     if ismethod(object):
         object = object.im_func
     if isfunction(object):
@@ -418,8 +418,8 @@ def getfile(object):
         object = object.f_code
     if iscode(object):
         return object.co_filename
-    raise TypeError('arg is not a module, class, method, '
-                    'function, traceback, frame, or code object')
+    raise TypeError('%r is not a module, class, method, '
+                    'function, traceback, frame, or code object' % object)
 
 ModuleInfo = namedtuple('ModuleInfo', 'name suffix mode module_type')
 
@@ -741,7 +741,7 @@ def getargs(co):
     'varargs' and 'varkw' are the names of the * and ** arguments or None."""
 
     if not iscode(co):
-        raise TypeError('arg is not a code object')
+        raise TypeError('%r is not a code object' % co)
 
     nargs = co.co_argcount
     names = co.co_varnames
@@ -805,7 +805,7 @@ def getargspec(func):
     if ismethod(func):
         func = func.im_func
     if not isfunction(func):
-        raise TypeError('arg is not a Python function')
+        raise TypeError('%r is not a Python function' % func)
     args, varargs, varkw = getargs(func.func_code)
     return ArgSpec(args, varargs, varkw, func.func_defaults)
 
@@ -902,7 +902,7 @@ def getframeinfo(frame, context=1):
     else:
         lineno = frame.f_lineno
     if not isframe(frame):
-        raise TypeError('arg is not a frame or traceback object')
+        raise TypeError('%r is not a frame or traceback object' % frame)
 
     filename = getsourcefile(frame) or getfile(frame)
     if context > 0: