Supongamos lo siguiente:Función que devuelve una tupla o Ninguna: cómo llamar bien a esa función?
def MyFunc(a):
if a < 0:
return None
return (a+1, a+2, a+3)
v1, v2, v3 = MyFunc()
# Bad ofcourse, if the result was None
¿Cuál es la mejor manera de definir una función que devuelve una tupla y sin embargo puede ser muy bien llamada. En la actualidad, podría hacer esto:
r = MyFunc()
if r:
v1, v2, v3 = r
else:
# bad!!
pass
Lo que no me gusta de esto es que tengo que usar una sola variable y luego descomprimirlo.
Otra solución es que podría tener la función devuelve una tupla completa de Nones de manera que la persona que llama puede descomprimir muy bien ....
Cualquier persona puede sugerir un mejor diseño?
1 me ganó de mano! – katrielalex
Eso es agradable, pero siempre estoy preocupado por la sobrecarga de la crianza y el manejo de excepciones –