@fnr lo siento, pero los revisores probablemente sintieron que la pregunta fue resuelta fácilmente por el doc. Sin embargo, he actualizado mi respuesta para mostrar que no siempre es tan obvio. Puedes dejar tu pregunta, es válida.
VonC
2
@fnr - un -1 en este sitio significa que la pregunta: "no muestra esfuerzo de investigación; no está claro o no es útil". Veo que etiquetó su pregunta como "ir" y "matrices" y quiere saber "cómo imprimirlas". Si voy a Google.com y busco "ir a matrices de tutoriales de lenguaje de programación", encuentro varios recursos, incluido este, que parece que podría ayudar. Entonces, si esto ayuda, muestra que no lo investigó mucho antes de publicarlo. Si esto no ayuda, debe llamar a sitios como este que buscó y explicar por qué no fue útil.
Si su matriz (o aquí segmento ) contiene struct(me gusta Project), verá sus detalles.
Para mayor precisión, puede usar %#vpara imprimir el objeto usando la sintaxis Go, como para un literal:
%v the valuein a default format.when printing structs, the plus flag (%+v) adds field names
%#v a Go-syntax representation of the value
Para tipos básicos, fmt.Println(projects)es suficiente.
Nota: para una porción de punteros, es decir []*Project(en lugar de []Project), es mejor que defina un String()método para mostrar exactamente lo que desea ver (o verá solo la dirección del puntero).
Vea este ejemplo de play.golang .
¯ \ _ (ツ) _ / ¯ Si encuentra una solución corta, agréguela como respuesta a esta pregunta. Apuesto a que eso es lo que la mayoría de la gente busca.
Pylinux
4
Si solo desea ver los valores de una matriz sin corchetes, puede usar una combinación de fmt.Sprint()ystrings.Trim()
a :=[]string{"a","b"}
fmt.Print(strings.Trim(fmt.Sprint(a),"[]"))
fmt.Print(a)
Devoluciones:
a b
[a b]
Sin embargo, tenga en cuenta que con esta solución, los corchetes iniciales se perderán del primer valor y los corchetes finales se perderán del último valor
a :=[]string{"[a]","[b]"}
fmt.Print(strings.Trim(fmt.Sprint(a),"[]")
fmt.Print(a)
Devoluciones:
a][b
[[a][b]]
Para obtener más información, consulte la documentación de strings.Trim ()
(Creé una cuenta para comentar sobre una respuesta existente, pero no puedo comentar hasta que tenga suficiente representante)
Si desea ver la información en un sector en el mismo formato que usaría para escribirla (algunos como ["uno", "dos", "tres"]), aquí hay un ejemplo de código que muestra cómo hacerlo :
¡Bienvenido a Stack Overflow! Siempre que su respuesta aporte algo nuevo al tema, pertenece a la sección de respuestas. No hay necesidad de justificarlo diciendo que su reputación es demasiado baja; su publicación está justo donde pertenece :) Dicho esto, generalmente se prefiere incluir cualquier código que esté usando directamente en la respuesta en lugar de como un enlace a otro sitio. Siéntase libre de dejar el enlace, pero también copie el código en su respuesta. ¡Gracias!
fmt.Println(projects)
?Respuestas:
Puedes probar los verbos
%v
,%+v
o%#v
de go fmt :Si su matriz (o aquí segmento ) contiene
struct
(me gustaProject
), verá sus detalles.Para mayor precisión, puede usar
%#v
para imprimir el objeto usando la sintaxis Go, como para un literal:Para tipos básicos,
fmt.Println(projects)
es suficiente.Nota: para una porción de punteros, es decir
[]*Project
(en lugar de[]Project
), es mejor que defina unString()
método para mostrar exactamente lo que desea ver (o verá solo la dirección del puntero).Vea este ejemplo de play.golang .
fuente
Para a
[]string
, puede usarstrings.Join()
:fuente
Prefiero
fmt.Printf("%+q", arr)
cual imprimiráhttps://play.golang.org/p/XHfkENNQAKb
fuente
Si solo desea ver los valores de una matriz sin corchetes, puede usar una combinación de
fmt.Sprint()
ystrings.Trim()
Devoluciones:
Sin embargo, tenga en cuenta que con esta solución, los corchetes iniciales se perderán del primer valor y los corchetes finales se perderán del último valor
Devoluciones:
Para obtener más información, consulte la documentación de strings.Trim ()
fuente
fmt.Printf()
está bien, pero a veces me gusta usar un bonito paquete de impresión .fuente
(Creé una cuenta para comentar sobre una respuesta existente, pero no puedo comentar hasta que tenga suficiente representante)
Si desea ver la información en un sector en el mismo formato que usaría para escribirla (algunos como ["uno", "dos", "tres"]), aquí hay un ejemplo de código que muestra cómo hacerlo :
https://play.golang.org/p/vOF6xZ__Otr
fuente
Puede utilizar el paquete Pretty Slice:
Este código se producirá y generará como este:
Para obtener más detalles, lea: https://github.com/inancgumus/prettyslice
fuente