¿Formatear una cadena Go sin imprimir?

¿Existe una forma sencilla de formatear una cadena en Go sin imprimir la cadena?

Puedo hacer:

bar := "bar"
fmt.Printf("foo: %s", bar)

Pero quiero que se devuelva la cadena formateada en lugar de imprimirla para poder manipularla aún más.

También podría hacer algo como:

s := "foo: " + bar

Pero esto se vuelve difícil de leer cuando la cadena de formato es compleja, y engorroso cuando una o muchas de las partes no son cadenas y deben convertirse primero, como

i := 25
s := "foo: " + strconv.Itoa(i)

Soy muy nuevo en Go, mi experiencia es en Ruby, donde esto es sencillo. ¿Hay una manera más sencilla de hacer esto?

Respuestas a la pregunta(4)

Su respuesta a la pregunta