Go语言fmt.Sprintf格式化输出的语法与实例
作者:Hi丶ImViper 发布时间:2024-05-09 09:31:08
标签:go语言,fmt.sprintf,格式化
格式化在逻辑中非常常用。使用格式化函数,要注意写法:
fmt.Sprintf(格式化样式, 参数列表…)
格式化样式:字符串形式,格式化动词以%开头。
参数列表:多个参数以逗号分隔,个数必须与格式化样式中的个数一一对应,否则运行时会报错。
在 Go 语言中,格式化的命名延续C语言风格:
var progress = 2
var target = 8
// 两参数格式化
title := fmt.Sprintf("已采集%d个药草, 还需要%d个完成任务", progress, target)
fmt.Println(title)
pi := 3.14159
// 按数值本身的格式输出
variant := fmt.Sprintf("%v %v %v", "月球基地", pi, true)
fmt.Println(variant)
// 匿名结构体声明, 并赋予初值
profile := &struct {
Name string
HP int
}{
Name: "rat",
HP: 150,
}
fmt.Printf("使用'%%+v' %+v\n", profile)
fmt.Printf("使用'%%#v' %#v\n", profile)
fmt.Printf("使用'%%T' %T\n", profile)
代码输出如下:
已采集2个药草, 还需要8个完成任务
“月球基地” 3.14159 true
使用’%+v’ &{Name:rat HP:150}
使用’%#v’ &struct { Name string; HP int }{Name:“rat”, HP:150}
使用’%T’ *struct { Name string; HP int }C语言中, 使用%d代表整型参数
下表中标出了常用的一些格式化样式中的动词及功能。
动 词 | 功 能 |
---|---|
%v | 按值的本来值输出 |
%+v | 在 %v 基础上,对结构体字段名和值进行展开 |
%#v | 输出 Go 语言语法格式的值 |
%T | 输出 Go 语言语法格式的类型和值 |
%% | 输出 % 本体 |
%b | 整型以二进制方式显示 |
%o | 整型以八进制方式显示 |
%d | 整型以十进制方式显示 |
%x | 整型以十六进制方式显示 |
%X | 整型以十六进制、字母大写方式显示 |
%U | Unicode 字符 |
%f | 浮点数 |
%p | 指针,十六进制方式显示 |
来源:https://blog.csdn.net/weixin_43314519/article/details/116308790


猜你喜欢
- 我们在SQL Server Management Studio中写SQL 的时候,避免不了在浏览器和SSMS两者之间频繁切换,并浪费时间,殊
- 所谓匿名函数,即是不需要定义函数,像表达式一样使用,不需要函数名(很多时候名字让我很困扰),一些简单的函数简单化, 举个例子我需要两个整数相
- 在并不知道DIV浮动层的宽度,高度的情况下,如何使浮动层在任何分辩率的情况下居中呢! 下面使用了JAVASCRIPT来
- 前言:大概一年前写的,前段时间跑了下,发现还能用,就分享出来了供大家学习,代码的很多细节不太记得了,也尽力做了优化。因为毕竟是微博,反爬技术
- scrollWidth 是对象的实际内容的宽,不包边线宽度,会随对象中内容的多少改变(内容多了可能会改变对象的实际宽度)。 cl
- 使用 Django自带的 auth 用户验证功能,编写函数,使用 is_authenticated 检查用户是否登录,结果报错:TypeEr
- 俗话说‘人生苦短,我有Python',但是如果初学Python的过程中碰到包和Python版本的问题估计会让你再苦一会,我在学习Py
- 1.1MyBatis简介 MyBatis 是一个可以自定义SQL、存储过程和高级
- 本文通过Python3+pyqt5实现了python Qt GUI 快速编程的19章的页面索引器应用程序例子。/home/yrd/eric_
- 下面看下字符串List按照长度排序(python)的实现方法myList = ['青海省','内蒙古自治区'
- 误区 #9: 数据库文件收缩不会影响性能错误! 收缩数据
- 如下所示:import numpy as npimport codecs, json a = np.arange(10).reshape(2
- 在 go 的标准库中,提供了 sync.Cond 这个并发原语,让我们可以实现多个 goroutine 等待某一条件满足之后再继续执行。 它
- Python语言功能非常强大,除了类之外,还有模块和包的概念,这有点像perl,此处简单说说包和模块。一、Python中的模块模块——其实就
- 1.不装入数据库而启动事例 可以不装入数据库而启动事例,一般是在数据库才创建时才可以这样做:STARTUP NOMOUNT2.启动事例并装入
- 前言推导式提供了更简洁高效的方法来生成序列而又不失代码的可读性。定义: 推导式是 Python 里很有用的一个特性,它可以用一行代码就可以创
- 实例如下所示:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transition
- 前言shape函数是Numpy中的函数,它的功能是读取矩阵的长度,比如shape[0]就是读取矩阵第一维度的长度。直接用.shape可以快速
- 话不多说,请看代码:<?phpdate_default_timezone_set("PRC"); error_re
- 分组查询 group bygroup by 属性名 [having 条件表达式][ with rollup]“属性名 ”指按照该字段值进行分