Avatar ·

Equivalente del operador ternario en Go: ¿cómo escribir una expresión condicional en una línea?

¡Hola a todos! Acabo de empezar a aprender Go después de varios años trabajando con Python y JavaScript. En esos lenguajes, solía usar el operador ternario para asignaciones condicionales compactas, por ejemplo: ```python status = "active" if user.is_logged_in else "inactive" ``` En Go, intento hacer algo similar: ```go package main import "fmt" func main() { age := 20 status := age >= 18 ? "adulto" : "niño" fmt.Println(status) } ``` Pero el compilador da un error. Entiendo que Go no tiene operador ternario, pero ¿cómo puedo escribir elegantemente una asignación condicional simple sin inflar el código? Probé con if-else, pero ocupa 4-5 líneas en lugar de una. ¿Hay una forma idiomática de hacerlo de manera concisa? ¿Quizás existe algún mecanismo incorporado o una práctica común entre los desarrolladores de Go? ¡Gracias de antemano por la ayuda! <<>>

Por qué Go no tiene operador ternario y qué usar en su lugar

Go es un lenguaje creado con énfasis en la