[Python-Dev] How long the wrong type of argument should we limit (or not) in the error message (C-api)?

Walter Dörwald walter at livinglogic.de
Mon Dec 16 16:29:09 CET 2013

On 15.12.13 17:33, Ethan Furman wrote:
> On 12/14/2013 07:51 PM, Steven D'Aprano wrote:
>> On Sun, Dec 15, 2013 at 11:25:10AM +1000, Nick Coghlan wrote:
>>> Oh, yes, a %T shortcut for "length limited type name of the supplied
>>> object" would be brilliant. We need this frequently for C level error
>>> messages, and I almost always have to look at an existing example to
>>> remember the exact incantation :)
>> What are the chances that could be made available from pure Python too?
>> Having to extract the name of the type is a very common need for error
>> messages, and I never know whether I ought to write type(obj).__name__
>> or obj.__class__.__name__. A %T and/or {:T} format code could be the One
>> Obvious Way to include the type name in strings
> +1

I'd vote for including the module name in the string and using 
__qualname__ instead of __name__, i.e. make "{:T}".format(obj) 
equivalent to 


More information about the Python-Dev mailing list