go formatted placeholders can be divided into: 1. Ordinary placeholders, including "%v", "% v", "%#v", "%T", etc.; 2. Boolean placeholders placeholder "%t"; 3. Integer placeholders, including "%b", "%c", "%d", "%o", etc.; 4. Floating point and complex number placeholders, including "%b" ", "%e", "%E", "%f", etc.; 5. String and byte slice placeholders, including "%s", "%q", "%x", etc.; 6. Pointers Placeholder "%p"; 7. Other marks, including " ", "-", and "#".
The operating environment of this tutorial: Windows 7 system, GO version 1.18, Dell G3 computer.
In Golang, formatted input and output require the use of formatted placeholders. For example, the function fmt.Scanf() that obtains data input by the user, and the function fmt.Printf() that formats the output.
The formatting placeholders of Go language can be roughly divided into ordinary placeholders, Boolean placeholders, integer placeholders, floating point and complex number placeholders, string and byte slice placeholders. , pointers, placeholders and other markers, etc.
Normal placeholder
Placeholder | Explanation | Example | Output |
---|---|---|---|
%v | Default format of the corresponding value | Printf("%v", webSite ) | {HaiCoder} |
When printing the structure, the field name will be added | Printf("% v ”, webSite) | {Name:HaiCoder} | |
Go syntax representation of the corresponding value | Printf( "#v", webSite) | main.WebSite{Name:"HaiCoder"} | |
Go syntax for the type of the corresponding value Represents | Printf("%T", webSite) | main.WebSite | |
Literal percentage number, not a placeholder for a value | Printf("%%") | % |
Boolean placeholder
Description | Example | Output | |
---|---|---|---|
true or false | Printf("%t", true) | true |
Integer placeholder
Explanation | Example | Output | |
---|---|---|---|
Binary representation | Printf("%b", 5) | 101 | |
The character represented by the corresponding Unicode code point | Printf("%c", 0x4E2D) | 中 | |
Decimal representation | Printf("%d", 0x12) | 18 | |
Octal representation | Printf("%d", 10) | 12 | |
Single quoted character literal, safely escaped by Go syntax | Printf("%q", 0x4E2D) | ' ' | |
Hexadecimal representation, the letter form is lowercase a-f | Printf("%x", 13) | d | |
Hexadecimal representation, the letter form is uppercase A-F | Printf("%x", 13) | D | |
Unicode format: U 1234, equivalent to "U X" | Printf("%U", 0x4E2D ) | U 4E2D |
Description | Example | Output | ||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Scientific notation with no decimal part and an exponent of a power of two, consistent with the 'b' conversion format of strconv.FormatFloat. For example -123456p-78 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
Printf("%e", 10.2) | 1.020000e 01 | %E | ||||||||||||||||||||||||||||||||||||||||||||||||||||
Printf("%e", 10.2) | 1.020000E 01 | ##%f | ||||||||||||||||||||||||||||||||||||||||||||||||||||
Printf("%f", 10.2) | 10.200000 | ##%g | Select %e according to the situation or %f to produce more compact (no trailing 0s) | |||||||||||||||||||||||||||||||||||||||||||||||||||
10.2 | % G | Choose %E or %f as appropriate to produce a more compact (no trailing 0) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
(10.2 2i) |
Placeholder | Description | Example | Output |
---|---|---|---|
Output string representation (string type or []byte) | Printf( "%s", []byte("Go language")) | Go language | |
A string surrounded by double quotes, Safely escaped by Go syntax | Printf("%q", "Go language") | "Go language" | |
Hexadecimal, lowercase letters, two characters per byte | Printf("%x", "golang") | 686a6c61164a | |
Hexadecimal, uppercase letters, two characters per byte | Printf("%X", "golang") | 686F6A616C61 |
Pointer
Description | Example | Output | |
---|---|---|---|
Hexadecimal representation, prefix 0x | Printf("%p", &people) | 0x4a56a0 |
Example | Output | ||
---|---|---|---|
Printf("% q", "中文") "\u4e2d\u6587" |
##- |
||
Printf("%#U", '中') | U 4E2D | ' ' | ##Space) Leave space for omitted signs in numeric values (% d)|
0 | Padding leading 0s instead of spaces; for numbers, this shifts the padding After reaching the plus and minus signs |||
#[Related recommendations: Go video tutorial | 、
The above is the detailed content of What are the formatting placeholders in golang?. For more information, please follow other related articles on the PHP Chinese website!