Ir al contenido principal

Hi, I'm Mariano Guerra, below is my blog, if you want to learn more about me and what I do check a summary here: marianoguerra.github.io or find me on twitter @warianoguerra or Mastodon @marianoguerra@hachyderm.io

cosa en python


class ndef:

def __init__( self , method ):
if callable( method ):
self.method = method
else:
raise 'method is not callable'

def dummy( self , *args ):
pass

def when( self , condition ):
try:
if eval( condition ):
return self.method
else:
return self.dummy
except:
return self.dummy


def __call__( self , *args ):
return self.method( *args )

def ejemplo( str ):
print "Hola " + str + "!"

ejemplo = ndef( ejemplo )
ejemplo.when( "1 + 2 == 3" )( "mundo" )
ejemplo.when( "1 + 2 == 4" )( "pepe" )


esto permite ejecutar un metodo cuando la condicion se cumple
me podrias decir que con un if se soluciona pero muetra la potencia de python
y lo util que es que todo sea un objeto ( para los de java: TODO! )