class Switch:
def __init__(self):
self._cases = {}
self._default = lambda: None
def case(self, value, funcion):
self._cases[value] = funcion
def default(self, funcion):
self._default = funcion
def eval(self, value):
return self._cases.get(value, self._default)()
s = Switch()
s.case(1, lambda: "uno")
s.case(2, lambda: "dos")
s.case(3, lambda: "tres")
s.default(lambda: "otro")
for i in range(5):
print(i, s.eval(i))