Функция fmt.Sprintf
Функция fmt.Sprintf возвращает строку,
сформатированную по указанному шаблону. Первым параметром
она принимает строку-шаблон с плейсхолдерами, а затем
переменное количество аргументов, которые должны
подставляться на место этих плейсхолдеров. Функция
полезна для создания строк с динамическими данными,
например, для формирования сообщений или записи в лог.
Синтаксис
fmt.Sprintf(format, args...)
Пример
Давайте с помощью fmt.Sprintf сформируем строку,
подставив в шаблон целое число и строку:
package main
import "fmt"
func main() {
name := "Alice"
age := 30
res := fmt.Sprintf("Name: %s, Age: %d", name, age)
fmt.Println(res)
}
Результат выполнения кода:
"Name: Alice, Age: 30"
Пример
Давайте используем несколько плейсхолдеров разных типов для форматирования строки:
package main
import "fmt"
func main() {
x := 123
y := 45.678
z := true
res := fmt.Sprintf("x=%d, y=%.2f, z=%t", x, y, z)
fmt.Println(res)
}
Результат выполнения кода:
"x=123, y=45.68, z=true"
Пример
Давайте сформируем строку для вывода слайса строк
с использованием fmt.Sprintf:
package main
import "fmt"
func main() {
items := []string{"a", "b", "c", "d", "e"}
res := fmt.Sprintf("Items: %v", items)
fmt.Println(res)
}
Результат выполнения кода:
"Items: [a b c d e]"
Смотрите также
-
функцию
fmt.Printf,
которая выводит сформатированную строку в стандартный вывод -
функцию
fmt.Sprint,
которая преобразует аргументы в строку без форматирования -
функцию
fmt.Sprintln,
которая объединяет аргументы в строку с пробелами -
функцию
fmt.verb-v,
которая описывает формат %v для вывода значения по умолчанию