Полезные приемы форматирования



Вот несколько приемов форматирования, которые могут быть вам полезны:



1️⃣ Закавыченная строка



Используйте %q, чтобы вывести строковое значение в кавычках.



s := "Hello, World!"

fmt.Printf("%q\n", s)

// "Hello, World!"




2️⃣ Названия полей структуры



Используйте %+v, чтобы вывести названия полей структуры, а не только значения.



alice := person{"Alice", 25}

fmt.Printf("%+v\n", alice)

// {name:Alice age:25}




3️⃣ Тип значения



Используйте %T, чтобы вывести тип значения.



var val any

val = 42

fmt.Printf("%T: %v\n", val, val)

// int: 42



val = "Hello, World!"

fmt.Printf("%T: %v\n", val, val)

// string: Hello, World!



val = person{"Alice", 25}

fmt.Printf("%T: %v\n", val, val)

// main.person: {Alice 25}




4️⃣ Индекс аргумента



Можно явно указать, какой по порядку аргумент выводить. Полезно, если одно и то же значение выводится несколько раз (как в примере с val выше).



num := 42

fmt.Printf("%[1]T: %[1]v\n", num)

// int: 42




Нумерация с 1.



👉 @juniorGolang