Nov 10 2008

Python: Funciones que devuelven más de un valor {

Tag: Python

Muchas veces nos encontramos con situaciones en las que nos vendría muy bien poder devolver más de un valor en una función… generalmente podemos recurrir a arrays, colecciones, diccionarios, hastables, etc. Pero en Python podemos devolver múltiples valores en una misma función y lo mejor de todo es que esos valores de retorno pueden ser de diferente tipo.

Dejo un par de ejemplos, escribo la función y luego la ejecuto para probar.

def masUnoMasDos(x):
     return x+1, x+2
 
print ""
print "masUnoMasDos()"
 
a,b = masUnoMasDos(7)
print "x+1 = "+str(a)
print "x+2 = "+str(b)
 
print "---------"
 
def rojo():
     return 255, 0, 0
 
print ""
print "rojo()"
 
print rojo()
 
print "---------"
 
def rojoHexa():
     return "ff", "00", "00"
 
print ""
print "rojoHexa()"
 
print rojoHexa()

Obtendremos la siguiente salida:

masUnoMasDos()
x+1 = 8
x+2 = 9
---------

rojo()
(255, 0, 0)
---------

rojoHexa()
('ff', '00', '00')

Para probar este código rápidamente, en caso de no tener Python instalado pueden utilizar http://codepad.org que es una excelente herramienta online, la misma permite compilar y ejecutar código en varios lenguajes, incluyendo: C/C++, D, Haskel, PHP, Pearl, Python y Ruby, entre otros.

}


Página 1 de 11