[pyar] Detectando llamadas con cantidad incorrectas de argumentos

Ezequiel Brizuela [aka EHB or qlixed] qlixed en gmail.com
Vie Feb 27 18:13:36 ART 2015


Me gusta esta:

if <f, args, kwargs no matchean en argumentos>:
    loguear(informacion_relevante)
else:
    f(*args, **kwargs)

Es mas defensiva.
Incluso lo podras convertir en un decorator facilmente me parece...

El vie, 27 de febrero de 2015 18:03, Martín Gaitán <gaitan en gmail.com>
escribió:

>
> 2015-02-27 17:52 GMT-03:00 Daniel Moisset <dmoisset en machinalis.com>:
>
> El problema es que esto me captura otros TypeErrors que no tienen nada que
>> ver con llamar a la funcion con cantidad correcta de argumentos, que se
>> capturan a un nivel mas alto, y quiero dejar pasar. Entonces quisiera hacer:
>>
>> try:
>>     f(*args, **kwargs)
>> except TypeError as e:
>>     if <e es por un mismatch de argumentos>:
>>         loguear(informacion_relevante)
>>     else: raise
>>
>
> Así no?
>
>
>
> try:
>     f(*args, **kwargs)
> except TypeError as e:
>     if e.message.startswith('f() takes exactly'):
>         log(...)
>     else:
>         raise
>
>
>
> --
> mgaitan.github.io
> textosypretextos.com.ar <http://textosyprextextos.com.ar>
>  _______________________________________________
> pyar mailing list pyar en python.org.ar
> http://listas.python.org.ar/listinfo/pyar
>
> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>
> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
> Argentina - http://www.usla.org.ar
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20150227/f7d2f4be/attachment.html>


More information about the pyar mailing list