[python] jméno typu

Radek Kanovsky rk na dat.cz
Pátek Listopad 10 21:55:41 CET 2006


On Fri, Nov 10, 2006 at 07:52:31PM +0100, superman wrote:

> Dobrý den,
> 
> zase se zeptám na něco co jsem nikde nenašel. Zkoušel jsem prostě vypsat 
> jméno typu ve stylu:
> 
>      def __floordiv__(self, other):
>          if isinstance(other, Angle):
>              return self.__radians // other.__radians;
>          else:
>              raise TypeError, 'invalid operation: Angle // ?'
> 
> akorát namísto otazníku jsem chtěl vypat jméno typu.
> 
> Zkoušel jsem type(other), a z toho nějak extrahovat jméno, ale nedařilo 
> se mi. Není to životně důležité, ale docela by se mi to líbilo. Nevíte 
> jak na to?


    >>> def clsname(obj):
    ...     return '%s.%s' % (obj.__class__.__module__, obj.__class__.__name__)
    ...

    >>> clsname(3)
    '__builtin__.int'

    >>> clsname(None)
    '__builtin__.NoneType'


Zdravi

Radek Kaňovský


Další informace o konferenci Python