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 操作(上锁…...
第7章 Mosquitto增加SSL/TLS加密通信
第7章 SSL/TLS加密通信 7.1 TLS基础 #mermaid-svg-GnHmiOrEfRuPOevS{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#mer…...
2026 年 1月 24 日-KB5078127(OS内部版本26200.7628 和 26100.7628)带外
🔥个人主页:杨利杰YJlio❄️个人专栏:《Sysinternals实战教程》《Windows PowerShell 实战》《WINDOWS教程》《IOS教程》《微信助手》《锤子助手》 《Python》 《Kali Linux》《那些年未解决的Windows疑难杂症》🌟 让复杂的事情更…...
Linux进程信号详解(二):信号产生
当前阶段:一、通过终端按键产生信号1.1 基本操作CtrlC → SIGINTCtrl\ → SIGQUIT 可以发送终止信号Ctrl Z -> SIGSTP 可以发送停止信号,将当前前台进程挂起到后台设置所有信号都可以自定义捕捉 : 1.2 理解OS如何得知键盘有数据1.3 初步理…...
新手零门槛入门:在快马平台轻松学会为openclaw切换不同的ai模型
今天想和大家分享一个特别适合AI编程新手的实践项目——在InsCode(快马)平台上为openclaw切换不同的AI模型。作为一个刚接触AI辅助开发的小白,我最初看到"更换模型"这种操作时总觉得很复杂,但实际体验后发现这个平台把整个过程简化得像搭积木一…...
零基础教程:用BERT文本分割镜像,一键整理杂乱会议记录
零基础教程:用BERT文本分割镜像,一键整理杂乱会议记录 1. 引言:告别混乱的长文本 每次开完会,面对那些密密麻麻、毫无段落之分的会议记录,你是不是也感到头疼?语音转写生成的文本常常连成一片,…...
2025 年12月9日-KB5072033(操作系统内部版本 26200.7462和26100.7462)
🔥个人主页:杨利杰YJlio❄️个人专栏:《Sysinternals实战教程》《Windows PowerShell 实战》《WINDOWS教程》《IOS教程》《微信助手》《锤子助手》 《Python》 《Kali Linux》《那些年未解决的Windows疑难杂症》🌟 让复杂的事情更…...
车桥耦合振动联合仿真程序功能说明文档
公路车桥耦合振动程序(考虑路面不平整度),适用于研究生参考!!!!!!!! 有两套模型,一套纯ansys,一套是ansys与matlab联合的 …...
OpenGL天空盒实战:从零搭建到环境反射效果(附完整代码)
OpenGL天空盒实战:从零搭建到环境反射效果(附完整代码) 在3D图形开发中,天空盒技术是实现环境氛围营造的基础手段。想象一下,当你站在游戏场景中抬头望去,远处的山脉、流动的云层和深邃的星空共同构成了沉浸…...
如何构建跨平台番剧播放器:基于Flutter的Kazumi深度技术解析
如何构建跨平台番剧播放器:基于Flutter的Kazumi深度技术解析 【免费下载链接】Kazumi 基于自定义规则的番剧采集APP,支持流媒体在线观看,支持弹幕,支持实时超分辨率。 项目地址: https://gitcode.com/gh_mirrors/ka/Kazumi …...
37、【Agent】【OpenCode】本地代理分析(一)
【声明】本博客所有内容均为个人业余时间创作,所述技术案例均来自公开开源项目(如Github,Apache基金会),不涉及任何企业机密或未公开技术,如有侵权请联系删除 背景 上篇 blog 【Agent】【OpenCode】本地代…...
