fmt 包中的所有 Print 系列函数

📌 fmt 包中的所有 Print 系列函数

✅ 1. 基础输出(写到标准输出 stdout)

这些是最常用的:控制台输出

函数 自动换行 自动空格 支持格式化 输出位置
fmt.Print 标准输出
fmt.Println ✔️ ✔️ 标准输出
fmt.Printf ✔️ 标准输出

✅ 2. 写入 字符串(返回 string,而不是打印)

这些函数不会输出到屏幕,而是返回字符串,非常适合构造日志、模板、HTTP 响应等。

函数 自动换行 自动空格 支持格式化 返回值
fmt.Sprint string
fmt.Sprintln ✔️ ✔️ string
fmt.Sprintf ✔️ string

示例:

go 复制代码
msg := fmt.Sprintf("id=%d name=%s", 10, "Tom")

✅ 3. 写入 任意 io.Writer(文件、网络连接、缓冲区等)

这是 Print 系列中最强的一组,用于日志系统、文件写入、网络写入

函数 自动换行 自动空格 支持格式化 输出位置
fmt.Fprint io.Writer
fmt.Fprintln ✔️ ✔️ io.Writer
fmt.Fprintf ✔️ io.Writer

示例:

go 复制代码
file, _ := os.Create("log.txt")
fmt.Fprintf(file, "error: %v\n", err)

📌 全家桶总结(非常适合面试)

前缀 Print Println Printf
fmt. 输出到 stdout 输出到 stdout 格式化输出到 stdout
fmt.S 返回 string 返回 string 返回格式化 string
fmt.F 写入 io.Writer 写入 io.Writer 格式化写入 io.Writer

📌 一句话记忆法

  • Print → 屏幕

  • Sprint → 字符串

  • Fprint → 文件

  • Ln → 自动换行

  • f → 格式化

go 复制代码
func main() {
	// Println、Print、Printf 控制台
	fmt.Println("Hello, World!")
	fmt.Print("this is Print,so need add ?\n")
	fmt.Printf("this is Printf,so can %d\n", 123)

	// Sprint、Sprintf、Sprintln 字符串
	msg := fmt.Sprintf("id=%d name=%s", 10, "Tom")
	fmt.Println(msg)

	// Fprint、Fprintf、Fprintln 文件
	f, err := os.Create("out.txt")
	if err != nil {
		log.Fatal(err)
	}
	defer f.Close()
	fmt.Fprintln(f, "file log: ", 42)s

}
相关推荐
leobertlan2 小时前
2025年终总结
前端·后端·程序员
面向Google编程2 小时前
从零学习Kafka:数据存储
后端·kafka
冷雨夜中漫步3 小时前
Python快速入门(6)——for/if/while语句
开发语言·经验分享·笔记·python
易安说AI3 小时前
Claude Opus 4.6 凌晨发布,我体验了一整晚,说说真实感受。
后端
易安说AI3 小时前
Ralph Loop 让Claude无止尽干活的牛马...
前端·后端
易安说AI3 小时前
用 Claude Code 远程分析生产日志,追踪 Claude Max 账户被封原因
后端
颜酱4 小时前
图结构完全解析:从基础概念到遍历实现
javascript·后端·算法
m0_736919104 小时前
C++代码风格检查工具
开发语言·c++·算法
2501_944934735 小时前
高职大数据技术专业,CDA和Python认证优先考哪个?
大数据·开发语言·python
黎雁·泠崖5 小时前
【魔法森林冒险】5/14 Allen类(三):任务进度与状态管理
java·开发语言