Maison >développement back-end >Golang >Explication détaillée des espaces réservés de formatage Golang

Explication détaillée des espaces réservés de formatage Golang

WBOY
WBOYoriginal
2024-03-13 08:24:04516parcourir

Explication détaillée des espaces réservés de formatage Golang

Explication détaillée des espaces réservés formatés Golang

Dans la programmation Golang, le formatage des chaînes est une opération courante, qui peut être utilisée pour formater différents types de données en sortie de chaîne. Lors du formatage des chaînes, les espaces réservés jouent un rôle essentiel, grâce auquel le format de sortie des données peut être spécifié. Cet article présentera en détail certains espaces réservés de formatage couramment utilisés dans Golang et fournira des exemples de code spécifiques pour votre référence.

1. Espaces réservés de formatage de base

Dans Golang, les espaces réservés de formatage de base couramment utilisés sont les suivants :

  • %v : Format par défaut %v:默认格式
  • %+v:对结构体格式化时添加字段名
  • %#v:给值添加类型信息
  • %T:输出值的类型
  • %%:百分号

下面是一个简单的示例代码,演示了基本的格式化占位符的使用:

package main

import "fmt"

type Person struct {
    Name string
    Age  int
}

func main() {
    p := Person{Name: "Alice", Age: 30}
    
    fmt.Printf("Person: %+v
", p)
    fmt.Printf("Type of p: %T
", p)
}

运行上述代码,输出结果如下:

Person: {Name:Alice Age:30}
Type of p: main.Person

2. 宽度与精度

在格式化数字时,可以使用宽度(width)和精度(precision)来控制输出的格式。以下是一些常用的占位符形式:

  • %f:浮点数格式化
  • %t:布尔值格式化
  • %b:二进制格式化
  • %d:十进制格式化
  • %o:八进制格式化
  • %x:十六进制格式化

下面的示例演示了如何使用宽度和精度对浮点数进行格式化:

package main

import "fmt"

func main() {
    f := 3.14159
    
    fmt.Printf("Default format: %f
", f)
    fmt.Printf("Width and precision: %5.2f
", f)
}

运行上面的代码,输出结果如下:

Default format: 3.141590
Width and precision:  3.14

3. 字符串格式化

除了数字和结构体之外,Golang 也可以格式化字符串。以下是一些常用的字符串格式化占位符:

  • %s:字符串
  • %q:带双引号的字符串
  • %x:十六进制字符串
  • %c:字符(Unicode码点)
  • %p
  • %+v  : Ajoutez des noms de champs lors du formatage de la structure

%#v : ajoutez des informations de type à la valeur

%T : affichez le type de la valeur

% % : signe de pourcentage

Ce qui suit est un exemple de code simple qui démontre l'utilisation d'espaces réservés de formatage de base :

package main

import "fmt"

func main() {
    str := "Hello, 世界"
    
    fmt.Printf("String: %s
", str)
    fmt.Printf("Quoted string: %q
", str)
    fmt.Printf("Hex encoding: %x
", str)
}

Exécutez le code ci-dessus, le résultat est le suivant : 🎜
String: Hello, 世界
Quoted string: "Hello, 世界"
Hex encoding: 48656c6c6f2c20e4b896e7958c
🎜 2. Largeur et précision🎜 🎜Lors du formatage des nombres, vous pouvez utiliser la largeur et la précision pour contrôler le format de sortie. Voici quelques formulaires d'espace réservé couramment utilisés : 🎜🎜🎜%f : formatage en virgule flottante 🎜🎜%t : formatage booléen 🎜🎜%b : Formatage binaire🎜🎜%d : Formatage décimal🎜🎜%o : Formatage octal🎜🎜%x : Formatage hexadécimal 🎜🎜🎜Ce qui suit L'exemple montre comment formater un nombre à virgule flottante en utilisant la largeur et la précision : 🎜rrreee🎜En exécutant le code ci-dessus, le résultat est le suivant : 🎜rrreee🎜3. Formatage de chaîne🎜🎜Exception En plus des nombres et des structures, Golang peut également formater des chaînes. . Voici quelques espaces réservés de formatage de chaîne couramment utilisés : 🎜🎜🎜%s : chaîne 🎜🎜%q : chaîne avec guillemets doubles 🎜🎜%x : Chaîne hexadécimale 🎜🎜%c : Caractère (point de code Unicode) 🎜🎜%p : Pointeur 🎜🎜🎜 ci-dessous L'exemple montre comment formater une chaîne : 🎜rrreee 🎜Exécutez le code ci-dessus, le résultat est le suivant : 🎜rrreee🎜Résumé🎜🎜Cet article présente certains espaces réservés de formatage couramment utilisés dans Golang, notamment les espaces réservés de base, le contrôle de la largeur et de la précision et le formatage des chaînes. En utilisant rationnellement des espaces réservés formatés, les données de sortie peuvent être rendues plus claires. Les lecteurs peuvent utiliser ces espaces réservés de manière flexible en fonction des besoins réels pour améliorer l'efficacité du travail quotidien de programmation Golang. 🎜🎜J'espère que le contenu de cet article sera utile à tout le monde, et j'espère également que les lecteurs pourront avoir une compréhension et une maîtrise plus approfondies des opérations de formatage de Golang dans la pratique. 🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn