一.格式化说明符

通用占位符:
%v 值的默认格式表示
%+v 类似%v,但输出结构体时会添加字段名
%#v 值的Go语法表示
%T 打印值的类型
%% 输出百分号 布尔型占位符:
%t 接收bool类型值,打印true或false 整型占位符:
%b 表示为二进制
%c 该值对应的unicode码值
%d 表示为十进制
%o 表示为八进制
%x 表示为十六进制,使用a-f
%X 表示为十六进制,使用A-F
%U 表示为Unicode格式:U+1234,等价于”U+%04X”
%q 该值对应的单引号括起来的go语法字符字面值,必要时会采用安全的转义表示 浮点数与复数占位符:
%b 无小数部分、二进制指数的科学计数法,如-123456p-78
%e 科学计数法,如-1234.456e+78
%E 科学计数法,如-1234.456E+78
%f 有小数部分但无指数部分,如123.456
%F 等价于%f
%g 根据实际情况采用%e或%f格式(以获得更简洁、准确的输出)
%G 根据实际情况采用%E或%F格式(以获得更简洁、准确的输出) 字符串和[]byte占位符:
%s 直接输出字符串或者[]byte
%q 该值对应的双引号括起来的go语法字符串字面值,必要时会采用安全的转义表示
%x 每个字节用两字符十六进制数表示(使用a-f
%X 每个字节用两字符十六进制数表示(使用A-F) 指针占位符:
%p 表示为十六进制,并加上前导的0x 数值型宽度标识符占位符:
%f 默认宽度,默认精度
%9f 宽度9,默认精度
%.2f 默认宽度,精度2
%9.2f 宽度9,精度2
%9.f 宽度9,精度0
示例:
n := 12.34
fmt.Printf("%f\n", n)
fmt.Printf("%9f\n", n)
fmt.Printf("%.2f\n", n)
fmt.Printf("%9.2f\n", n)
fmt.Printf("%9.f\n", n)

这里比较常用的是%v,我们可以看作是万能的格式符。

二.Golang中fmt包几种输出的区别

我们日常在使用fmt包的过程中,主要包含几种Print序列函数:Fprint、Fprintf、Fprintln、Sprint、Sprintf、Sprintln、Print、Printf、Println。

一般情况下,可以将Fprint、Fprintf、Fprintln归为一类,Sprint、Sprintf、Sprintln归为一类,Print、Printf、Println归为另一类。其中,Print、Printf、Println会嗲用相应的F开头的一类函数。

func Print(a ...interface{}) (n int, err error) {
return Fprint(os.Stdout, a...)
}

Fprint、Fprintf、Fprintln函数的第一个参数接收一个io.Writer类型,会将内容输出到io.Writer中去,而Print、Printf、Println函数是将内容输出到标准输出中,因此直接调用F类函数做这件事,并将os.Stdout作为第一个参数传入。

Sprint、Sprintf、Sprintln是格式化内容为string类型,而不输出到某处。

result1 := fmt.Sprintln("studygolang.com", 2013)
result2 := fmt.Sprint("studygolang.com", 2013)

返回的result1的值为:studygolang.com 2013,返回的result2的值为:studygolang.com2013。这里起到了连接字符串的作用。

Golang的格式化输出的更多相关文章

  1. Golang的格式化输出fmt.Printf

    本文来源:Go by example. Golang的格式化输出 和 C语言的标准输出基本一样,但是增加了一些针对Golang语言的特有数据结构的格式化输出方式. 一下就是实例: package ma ...

  2. golang格式化输出-fmt包用法详解

    golang格式化输出-fmt包用法详解 注意:我在这里给出golang查询关于包的使用的地址:https://godoc.org    声明: 此片文章并非原创,大多数内容都是来自:https:// ...

  3. golang 对结构体进行格式化输出

    可以使用 `return fmt.Sprintf("%+v", *conf) ` 来打印结构体,包括结构体的key值.但是由于结构体内容较多,都在一行,所以希望可以格式化输出结构体 ...

  4. 【转】 Golang输入输出格式化Printf Springf Fprintf..

    // Go 在传统的`printf` 中对字符串格式化提供了优异的支持. // 这里是一些基本的字符串格式化的人物的例子. package main import "fmt" im ...

  5. go 格式化输出

    一.什么是格式化输出? 二.有哪些符号 普通占位符 占位符 说明 举例 输出 %v 相应值的默认格式. Printf("%v", people) {zhangsan}, %+v 打 ...

  6. python的print函数的格式化输出

    使用print函数的时候,可以像C一样格式化输出,同时还支持参数化输出 print('%s' % ("CooMark")) print('整数|%d|' % (123)) prin ...

  7. python学习笔记(基础二:注释、用户输入、格式化输出)

    注释 单行:# 多行:上下各用3个连续单引号或双引号 3个引号除了多行注释,还可以打印多行 举例: msg = ''' name = "Alex Li" name2 = name ...

  8. cout 格式化输出

    一直习惯于C语言的printf函数来打印,突然有一天要用cout来打印,发现有点不适应. 原来cout也是有格式化输出的. 首先要引入头文件 #include<iostream> // 在 ...

  9. Python 格式化输出

    转载 今天写程序又记不清格式化输出细节了--= =索性整理一下. 注意: 与C/C++  不同的是这里括号后面不需要加' , '号. python print格式化输出. 1. 打印字符串 print ...

  10. Python格式化输出

    今天写程序又记不清格式化输出细节了……= =索性整理一下. python print格式化输出. 1. 打印字符串 print ("His name is %s"%("A ...

随机推荐

  1. js解析json字符串、对象与json之间的转换

    前言 在数据传输流程中,json是以文本,即字符串的形式传递的,而JS操作的是JSON对象,所以,JSON对象和JSON字符串之间的相互转换是关键. js解析json字符串 // JSON字符串 'v ...

  2. 解决Linux下文本文件中文乱码问题

    上一篇我们提到了OS和DB的一些中文乱码问题解决,本篇我们继续介绍下在OS上的文本文件中文乱码问题. 操作系统是Linux(OEL 8.10),所有文件是打了一个压缩包上传的,上传解压后发现其中的文本 ...

  3. [源码系列:手写spring] IOC第十四节:容器事件和事件监听器

    代码分支 https://github.com/yihuiaa/little-spring/tree/event-and-event-listenerhttps://github.com/yihuia ...

  4. storm部署文档

    背景 这篇笔记原来是记录在印象笔记中的,没有发布到博客中,这次我重新整理一下发布上来,希望给读者以参考. Storm的部署手册 Zookeepr的部署 首先下载安装包:apache-zookeeper ...

  5. 区块链特辑——solidity语言基础(二)

    Solidity语法基础学习 四.函数类型: 函数 Function function FnName [V] [SM] [return (--)] {} ·[V]:Visibility,可见性: ·[ ...

  6. Spring AOP 应用

    Spring AOP 应用 1. 介绍 AOP:面向切面编程,对面向对象编程的一种补充. AOP可以将一些公用的代码,自然的嵌入到指定方法的指定位置. 比如: 如上图,我们现在有四个方法,我们想在每个 ...

  7. fastreport6的frxpngimage.pas不能编译xe下

    升级很痛苦,因为兼容问题. fastreport6的frxpngimage.pas不能编译出现错误 procedure TChunkIDAT.CopyInterlacedRGB8(const Pass ...

  8. HTB打靶记录-Vintage

    信息收集 nmap -sV -sC -O 10.10.11.45 Nmap scan report for 10.10.11.45 Host is up (2.1s latency). Not sho ...

  9. eolinker校验规则之正则匹配:返回结果校验的方法和案例(正则校验)

    如上图红色箭头,需要校验返回值内是否包含"创建满足条件的优惠券"这一内容 如果需要满足以上校验,最好的方法就是使用正则进行匹配 切换到正则匹配,输入需要校验的内容,即可实现正则匹配 ...

  10. Java 中常见的垃圾收集器有哪些?

    Java 中常见的垃圾收集器 Java 提供了多种垃圾收集器(Garbage Collector, GC),每种收集器针对不同的应用场景和需求进行了优化.以下是常见的垃圾收集器及其特点. 1. Ser ...