Go语言fmt包中print相关方法
Go语言的fmt包提供了多种打印相关的函数,主要用于在控制台或其他输出目标上格式化并输出数据。下面是一些常用的print相关方法的用途和区别:
1.fmt.Print()
- 功能:
fmt.Print()将参数的内容按默认格式输出到标准输出(通常是控制台),不会添加任何额外的格式或换行符。 - 特点:
- 输出内容之间没有分隔符。
- 不会在输出后自动添加换行符。

2. fmt.Println()
- 功能:
fmt.Println()将参数的内容按默认格式输出到标准输出,并在每个参数之间自动添加空格,最后添加一个换行符。 - 特点:
- 参数之间用空格分隔。
- 输出内容后会自动添加一个换行符。

3. fmt.Printf()
- 功能:
fmt.Printf()允许使用格式化字符串来输出内容。您可以指定格式说明符以控制输出的格式。 - 特点:
- 支持各种格式化选项,如整数、浮点数、字符串等。
- 输出不会自动添加换行符,除非在格式字符串中显式包含换行符。

4. fmt.Sprint()
- 功能:
fmt.Sprint()与fmt.Print()类似,但它会将格式化后的字符串返回,而不是直接输出到标准输出。 - 特点:
- 返回格式化后的字符串(多个参数间加空格)。
- 可以将其结果存储在变量中或进行进一步处理。

5. fmt.Sprintf()
- 功能:
fmt.Sprintf()与fmt.Printf()类似,但它将格式化后的字符串返回,而不是直接输出到标准输出。 - 特点:
- 允许使用格式化字符串来控制输出格式。
- 返回格式化后的字符串,适用于需要将格式化结果作为字符串使用的情况。

6. fmt.Fprint(), fmt.Fprintf(), fmt.Fprintln()
- 功能: 这些函数用于将格式化内容输出到指定的
io.Writer接口(如文件、网络连接等)。 - 特点:
fmt.Fprint(): 不添加任何分隔符或换行符。fmt.Fprintf(): 使用格式化字符串来控制输出格式。fmt.Fprintln(): 在输出内容之间添加空格,最后添加换行符。

总结
fmt.Print(): 输出内容,之间无分隔符,无换行符。fmt.Println(): 输出内容,自动分隔和添加换行符。fmt.Printf(): 格式化输出,支持复杂格式化,输出内容无换行符。fmt.Sprint(): 格式化内容并返回字符串。fmt.Sprintf(): 格式化内容并返回字符串,支持复杂格式化。fmt.Fprint(),fmt.Fprintf(),fmt.Fprintln(): 输出到指定io.Writer,支持不同的格式和功能。
7.常见的格式化占位符
1.%s: 输出字符串
- 用于格式化字符串类型。
fmt.Printf("Hello, %s!\n", "Alice")
// 输出: Hello, Alice!
2.%d: 输出整数
- 用于格式化十进制整数类型。
fmt.Printf("Number: %d\n", 42)
// 输出: Number: 42
3.%f: 输出浮点数
- 用于格式化浮点数类型。
fmt.Printf("Float: %f\n", 3.14159)
// 输出: Float: 3.141590
4.%x: 输出十六进制整数
- 用于格式化整数为十六进制表示。
fmt.Printf("Hex: %x\n", 255)
// 输出: Hex: ff
5.%o: 输出八进制整数
- 用于格式化整数为八进制表示。
fmt.Printf("Octal: %o\n", 64)
// 输出: Octal: 100
6.%b: 输出二进制整数
- 用于格式化整数为二进制表示。
fmt.Printf("Binary: %b\n", 5)
// 输出: Binary: 101
7.%c: 输出字符
- 用于格式化单个字符(基于其整数值)。
fmt.Printf("Character: %c\n", 65)
// 输出: Character: A
8.%p: 输出指针
- 用于格式化指针地址。
var x int
fmt.Printf("Pointer: %p\n", &x)
// 输出: Pointer: 0xc0000b4000
9.%v: 输出默认格式
- 用于格式化值的默认表示形式。
fmt.Printf("Value: %v\n", 123)
// 输出: Value: 123
10.%T: 输出类型
- 用于输出值的类型。
fmt.Printf("Type: %T\n", 123)
// 输出: Type: int
11.%+v: 输出结构体时显示字段名
- 用于格式化结构体时,显示字段名。
type Person struct {Name stringAge int
}
p := Person{"Alice", 30}
fmt.Printf("Person: %+v\n", p)
// 输出: Person: {Name:Alice Age:30}
12.%#v: 输出值的 Go 语法表示
- 用于格式化值为 Go 语言的语法表示。
fmt.Printf("Go syntax: %#v\n", 123)
// 输出: Go syntax: 123
13.%e: 输出浮点数的科学记数法
- 用于浮点数的科学记数法表示。
fmt.Printf("Scientific: %e\n", 1234.567)
// 输出: Scientific: 1.234567e+03
14.%g: 输出浮点数的最简洁表示
- 用于浮点数的最简洁表示(自动选择
%f或%e)。
fmt.Printf("Compact: %g\n", 155555534.233)
// 输出: Compact: 1.55555534233e+08fmt.Printf("Compact: %g\n", 155534.233)
// 输出: Compact: 155534.233
格式化标志
除了占位符本身,您还可以使用格式化标志来控制输出的宽度、对齐、精度等。常见的格式化标志包括:
%5d: 输出一个宽度为 5 的整数,右对齐,不足部分填充空格。%-5d: 输出一个宽度为 5 的整数,左对齐,不足部分填充空格。%.2f: 输出浮点数,保留两位小数。
fmt.Printf("Right-aligned: %5d\n", 42)
//输出:Right-aligned: 42fmt.Printf("Left-aligned: %-5d\n", 42)
//输出:Left-aligned: 42 fmt.Printf("Float with precision: %.2f\n", 3.14159)
//输出:Float with precision: 3.14相关文章:
Go语言fmt包中print相关方法
Go语言的fmt包提供了多种打印相关的函数,主要用于在控制台或其他输出目标上格式化并输出数据。下面是一些常用的print相关方法的用途和区别: 1.fmt.Print() 功能: fmt.Print() 将参数的内容按默认格式输出到标准输出(通常是控制台ÿ…...
图片转为pdf怎么弄?亲测有效的8个pdf转换方法安利
图片转PDF怎么弄?在日常的办公生活中,我们经常会需要处理一些文档格式转换难题,图片转成PDF格式就是其中一个,图片转换成PDF格式的话,方便我们传输分享,毕竟现在PDF格式凭借着自身的稳定性和可移植性已经成…...
贪吃蛇(使用QT)
贪吃蛇小游戏 一.项目介绍**[贪吃蛇项目地址](https://gitee.com/strandingzy/QT/tree/zyy/snake)**界面一:游戏大厅界面二:关卡选择界面界面三:游戏界面 二.项目实现2.1 游戏大厅2.2关卡选择界面2.3 游戏房间2.3.1 封装贪吃蛇数据结构2.3.2 …...
【案例40】Apache中mod_proxy模块的使用
NC中间件 应用场景:配置了apache的情况,包括uap集群,配置https等场景下均适用;如果是单机(NC单结点情况不存在问题,则不用配置这项; was环境也不用配置此项。) 解决方案:按如下两…...
简单安装Android Studio并使用
在Windows上安装Android Studio的步骤如下: ### 1. 检查系统要求 确保你的计算机符合Android Studio的系统要求,通常包括: - Windows 8/10/11 - 64位处理器 - 最少4 GB RAM(推荐8 GB) - 最少2 GB可用硬盘空间ÿ…...
在Python中,模块(Module)和包(Package)
在Python中,模块(Module)和包(Package)是组织代码、提高代码复用性、促进代码维护的两种重要机制。它们各自扮演着不同的角色,但又紧密相连,共同构成了Python程序架构的基础。以下将详细阐述Pyt…...
Node版本管理工具
一、nvm 安装 二、常用命令 nvm v //查看nvm 版本号nvm install latest // 下载最新的 node 版本 nvm install 版本号 //安装node对应的版本nvm uninstall 版本号 //卸载对应的版本nvm list // 查看下载的所有版本的nodenvm use 版本号 // 只有引入了才能使用…...
创建并发布NPM模块
创建模块项目 $ mkdir my-npm-package $ cd my-npm-package $ npm init添加模块代码 创建新文件 index.js,内容如下 function helloworld() {console.log(Hello World!); }module.exports helloworld;测试模块 在模块目录(my-npm-package࿰…...
20240807软考架构-------软考31-35答案解析
每日打卡题31-35答案 31、【2015年真题】 难度:一般 对于遗留系统的评价框架如下图所示,那么处于“高水平、低价值”区的遗留系统适合于采用的演化策略为 ( )。 A.淘汰B.继承C.改造D.集成 答案…...
简单实现二叉树(链表实现)
接着上一节。我们接着学习二叉树,学习使用链表建立二叉树时,最好把每个子程序的递归展开图,都画一下 前言 在学习二叉树的基本结构前,需先要创建一颗二叉树,然后才能学习其相关的基本操作,由于现在大家二…...
搭建 Web 群集Haproxy
案例概述 Haproxy 是目前比较流行的一种群集调度工具,同类群集调度工具有很多,如 LVS 和Nginx。相比较而言,LVS 性能最好,但是搭建相对复杂;Nginx 的upstream模块支持群集功能,但是对群集节点健康检查功能不强…...
PDF隐写思路
文章目录 使用工具技术细节小结 使用工具 工具:WPS、010Editor、WbStego 技术细节 步骤: 使用 WPS 查看文件,看是否能打开。 若不能打开则使用 010Editor 查看是否少了头文件等。 正常的 PDF 缺少头文件的 PDF 如果缺少头文件则使用 010…...
Pycharm 常用快捷键
快捷键作用描述Ctrl Space基本的代码自动完成Ctrl Shift Space选择代码自动完成Ctrl D复制当前行或符号Ctrl X剪切当前行或符号Ctrl C复制当前行或符号Ctrl V粘贴剪贴板内容Ctrl Y删除当前行Ctrl A全选当前文件内容Ctrl Z撤销操作Ctrl Shift Z重做操作Ctrl F查找文…...
android音频录音,(一)MediaRecorder简介
1.MediaRecorder概述 Android 多媒体框架支持捕获和编码各种常见的音频和视频格式,简要介绍音频录音。 2.MediaRecorder 源码路径:frameworks/base/media/java/android/media/MediaRecorder.java 源码接口: setAudioSource(MediaRecorde…...
autoX.js
一. 概述 AutoX.js 使用 JavaScript 作为脚本语言,目前使用 Rhino 1.7.13 作为脚本引擎,支持 ES5 与部分 ES6 特性。 下载地址: https://github.com/kkevsekk1/AutoX/releases 官方文档: AutoX.js 二. 用法 1. 首先在官网下…...
日本软文发稿:日本主流发稿媒体有哪些?
日本软文发稿:日本主流发稿媒体有哪些 在日本发布软文时,选择合适的主流媒体进行推广是非常关键的。以下是一些在日本广受欢迎、影响力较大的媒体推荐(排列不区分媒体排名顺序): 1. 朝日新闻 (Asahi Shimbun) 朝日新…...
翰德恩赋能中国邮政信息科技产品创新系列培训
为了增强中邮信科公司需求分析工程师的专业素养,提升其业务需求和业务价值的挖掘能力,进而设计并交付满足用户期望的产品,提升用户体验,运营管理部于2024年4月至6月成功举办了六期需求分析工程师能力提升系列培训。 本次系列培训…...
分享一个基于SpringBoot的英语学习平台Java英语学习任务打卡系统(源码、调试、LW、开题、PPT)
💕💕作者:计算机源码社 💕💕个人简介:本人 八年开发经验,擅长Java、Python、PHP、.NET、Node.js、Android、微信小程序、爬虫、大数据、机器学习等,大家有这一块的问题可以一起交流&…...
Golang学习笔记
Go 语言学习笔记 1. 引言 Go 语言是由 Google 开发的一种静态类型、编译型的系统编程语言。它以简洁、高效和易于理解著称,并且支持并发编程。 2. 安装与环境配置 2.1 安装 Go 访问 Go 官方网站 下载适合你操作系统的安装包。安装完成后,设置 GOPAT…...
详解【多线程与并发】之线程
目录 1、线程 1.1线程Thread 1.2线程特点 1.3线程函数的原型 1.4Linux对于pthread的API的支持 1.4.1创建一个线程 1.4.2线程的退出 1.5资源分离 2、线程的同步/互斥机制 2.1线程互斥锁 2.1.1初始化线程互斥锁 2.2线程互斥锁的PV 操作 2.2.1P 操作(上锁…...
练习(含atoi的模拟实现,自定义类型等练习)
一、结构体大小的计算及位段 (结构体大小计算及位段 详解请看:自定义类型:结构体进阶-CSDN博客) 1.在32位系统环境,编译选项为4字节对齐,那么sizeof(A)和sizeof(B)是多少? #pragma pack(4)st…...
visual studio 2022更改主题为深色
visual studio 2022更改主题为深色 点击visual studio 上方的 工具-> 选项 在选项窗口中,选择 环境 -> 常规 ,将其中的颜色主题改成深色 点击确定,更改完成...
Leetcode 3577. Count the Number of Computer Unlocking Permutations
Leetcode 3577. Count the Number of Computer Unlocking Permutations 1. 解题思路2. 代码实现 题目链接:3577. Count the Number of Computer Unlocking Permutations 1. 解题思路 这一题其实就是一个脑筋急转弯,要想要能够将所有的电脑解锁&#x…...
Linux-07 ubuntu 的 chrome 启动不了
文章目录 问题原因解决步骤一、卸载旧版chrome二、重新安装chorme三、启动不了,报错如下四、启动不了,解决如下 总结 问题原因 在应用中可以看到chrome,但是打不开(说明:原来的ubuntu系统出问题了,这个是备用的硬盘&a…...
智能分布式爬虫的数据处理流水线优化:基于深度强化学习的数据质量控制
在数字化浪潮席卷全球的今天,数据已成为企业和研究机构的核心资产。智能分布式爬虫作为高效的数据采集工具,在大规模数据获取中发挥着关键作用。然而,传统的数据处理流水线在面对复杂多变的网络环境和海量异构数据时,常出现数据质…...
音视频——I2S 协议详解
I2S 协议详解 I2S (Inter-IC Sound) 协议是一种串行总线协议,专门用于在数字音频设备之间传输数字音频数据。它由飞利浦(Philips)公司开发,以其简单、高效和广泛的兼容性而闻名。 1. 信号线 I2S 协议通常使用三根或四根信号线&a…...
MySQL 8.0 事务全面讲解
以下是一个结合两次回答的 MySQL 8.0 事务全面讲解,涵盖了事务的核心概念、操作示例、失败回滚、隔离级别、事务性 DDL 和 XA 事务等内容,并修正了查看隔离级别的命令。 MySQL 8.0 事务全面讲解 一、事务的核心概念(ACID) 事务是…...
三分算法与DeepSeek辅助证明是单峰函数
前置 单峰函数有唯一的最大值,最大值左侧的数值严格单调递增,最大值右侧的数值严格单调递减。 单谷函数有唯一的最小值,最小值左侧的数值严格单调递减,最小值右侧的数值严格单调递增。 三分的本质 三分和二分一样都是通过不断缩…...
[ACTF2020 新生赛]Include 1(php://filter伪协议)
题目 做法 启动靶机,点进去 点进去 查看URL,有 ?fileflag.php说明存在文件包含,原理是php://filter 协议 当它与包含函数结合时,php://filter流会被当作php文件执行。 用php://filter加编码,能让PHP把文件内容…...
Qt的学习(一)
1.什么是Qt Qt特指用来进行桌面应用开发(电脑上写的程序)涉及到的一套技术Qt无法开发网页前端,也不能开发移动应用。 客户端开发的重要任务:编写和用户交互的界面。一般来说和用户交互的界面,有两种典型风格&…...
