# fmt ``` import "fmt" ``` ### 方法 - [Errorf](https://golang.org/pkg/fmt/#example_Errorf) 错误输出 - [Fprint](https://golang.org/pkg/fmt/#example_Fprint) - [Fprintf](https://golang.org/pkg/fmt/#example_Fprintf) - [Fprintln](https://golang.org/pkg/fmt/#example_Fprintln) - [Fscanf](https://golang.org/pkg/fmt/#example_Fscanf) - [Fscanln](https://golang.org/pkg/fmt/#example_Fscanln) - [GoStringer](https://golang.org/pkg/fmt/#example_GoStringer) - [Print](https://golang.org/pkg/fmt/#example_Print) 输出 - [Printf](https://golang.org/pkg/fmt/#example_Printf) 格式化输出 - [Println](https://golang.org/pkg/fmt/#example_Println) 输出+换行 - [Sprint](https://golang.org/pkg/fmt/#example_Sprint) - [Sprintf](https://golang.org/pkg/fmt/#example_Sprintf) 字符串格式化 - [Sprintln](https://golang.org/pkg/fmt/#example_Sprintln) - [Sscanf](https://golang.org/pkg/fmt/#example_Sscanf) - [Stringer](https://golang.org/pkg/fmt/#example_Stringer) - [Package (Formats)](https://golang.org/pkg/fmt/#example__formats) - [Package (Printers)](https://golang.org/pkg/fmt/#example__printers) ### 格式化字符 General ``` %v the value in a default format when printing structs, the plus flag (%+v) adds field names %#v a Go-syntax representation of the value %T a Go-syntax representation of the type of the value %% a literal percent sign; consumes no value ``` 逻辑bool ``` Boolean ``` 整数 ``` %b base 2 %c the character represented by the corresponding Unicode code point %d base 10 %o base 8 %O base 8 with 0o prefix %q a single-quoted character literal safely escaped with Go syntax. %x base 16, with lower-case letters for a-f %X base 16, with upper-case letters for A-F %U Unicode format: U+1234; same as "U+%04X" ``` 浮点数、小数 ``` %b decimalless scientific notation with exponent a power of two, in the manner of strconv.FormatFloat with the 'b' format, e.g. -123456p-78 %e scientific notation, e.g. -1.234456e+78 %E scientific notation, e.g. -1.234456E+78 %f decimal point but no exponent, e.g. 123.456 %F synonym for %f %g %e for large exponents, %f otherwise. Precision is discussed below. %G %E for large exponents, %F otherwise %x hexadecimal notation (with decimal power of two exponent), e.g. -0x1.23abcp+20 %X upper-case hexadecimal notation, e.g. -0X1.23ABCP+20 ``` 字符串 ``` %s the uninterpreted bytes of the string or slice %q a double-quoted string safely escaped with Go syntax %x base 16, lower-case, two characters per byte %X base 16, upper-case, two characters per byte ``` 切片 ``` %p address of 0th element in base 16 notation, with leading 0x ``` 指针 ``` %p base 16 notation, with leading 0x The %b, %d, %o, %x and %X verbs also work with pointers, formatting the value exactly as if it were an integer. ```