Avatar ·

Cómo devolver múltiples valores de una función en Go y qué usar en lugar de tuples

¡Hola a todos! Acabo de empezar a aprender Go después de Python y me encontré con un problema. En Python solía usar tuples para, por ejemplo, devolver varios valores de una función o agrupar un par de datos relacionados. Por ejemplo: ```python def get_user(): return ("Alice", 30) name, age = get_user() ``` Pero en Go no encuentro un tipo incorporado "tuple" o "pair". En la documentación dice que una función puede devolver múltiples valores, pero no es exactamente lo mismo. Cuando intento hacer algo similar: ```go func getUser() (string, int) { return "Alice", 30 } func main() { name, age := getUser() fmt.Println(name, age) // Esto funciona } ``` Todo está bien mientras quiero simplemente desempaquetar el resultado en variables. Pero ¿qué pasa si quiero guardar el resultado como una unidad? Por ejemplo, pasarlo a otra función, ponerlo en un slice o map? En Python haría esto: ```python users = [("Alice", 30), ("Bob", 25)] ``` En Go no puedo escribir `[