go标准库之fmt

fmt库

Print系列

1. Print
不换行
2. Println
换行
3. Printf
不换行,可以使用格式化占位符

格式化占位符

占位符 说明
通用 ---
%v 值的默认格式
%+v 会输出结构体的字段名
%#v 值的go语法表示
%T 类型
%% 输出%
布尔类型 ---
%t true或者false
整形 ---
%b 二进制
%c
%d 十进制
%o 八进制
%x 16进制小写
%X 16进制大写
%U unicode格式: U+....
%q 类似%c,但是多了单引号
浮点数 ---
%b
%e
%E
%f 可以跟C语言一样,%.2f
%F 同%f
%g 用%f或%g就够了,其他懒的了解
%G
字符串 ---
%s 可以打印字符串或者[]byte切片
%q 会用双引号括起来,会显示转义表示无法显示的内容
%x 16进制显示字符串
%X 16进制显示字符串
指针 ---
%p

格式化占位符宽度标识符

%-10.2f表示宽度10,精度2,靠左对齐,默认是靠右对齐

%010.2f表示宽度10,精度2,补齐不是空格,而是0

%#x 补0x

%#X 补0X

%#0 补0

使用%s

使用%s时需要注意不是像C语言一样,到0结束符就结束了,go里不一样,会一直打印到结束

比如 []byte{'a', 'b', 0, 'c', 'd'},使用 %s 打印,则会输出abcd

Fprint系列

跟Print系列一样,就是多了第一个参数,作为输出

1. Fprint
不换行
2. Fprintln
换行
3. Fprintf
不换行,可以使用格式化占位符 等同于 Print(os.Stdout, ...) 系列

输出到文件写法

  file, err := os.OpenFile("abc.txt", os.O_CREATE|os.O_RDWR, 0644)
if err != nil {
return
} fmt.Fprintf(file, "我是%s\n", "rouchie")

Sprint系列

跟Print系列一样,就是不是打印而是打印的字符串

1. Sprint
不换行
2. Sprintln
换行
3. Sprintf
不换行,可以使用格式化占位符

字符串拼接

    s := fmt.Sprintf("%d:%s", 123, "name")

go标准库之fmt的更多相关文章

  1. Go语言系列之标准库fmt

    fmt包实现了类似C语言printf和scanf的格式化I/O.主要分为向外输出内容和获取输入内容两大部分. 向外输出 标准库fmt提供了以下几种输出相关函数. Print Print系列函数会将内容 ...

  2. python学习笔记系列----(八)python常用的标准库

    终于学到了python手册的最后一部分:常用标准库.这部分内容主要就是介绍了一些基础的常用的基础库,可以大概了解下,在以后真正使用的时候也能想起来再拿出来用. 8.1 操作系统接口模块:OS OS模块 ...

  3. 用CAS操作实现Go标准库中的Once

    Go标准库中提供了Sync.Once来实现"只执行一次"的功能.学习了一下源代码,里面用的是经典的双重检查的模式: // Once is an object that will p ...

  4. golang 标准库间依赖的可视化展示

    简介 国庆看完 << Go 语言圣经 >>,总想做点什么,来加深下印象.以可视化的方式展示 golang 标准库之间的依赖,可能是一个比较好的切入点.做之前,简单搜了下相关的内 ...

  5. Go 标准库 http.FileServer 实现静态文件服务

    http.FileServer 方法属于标准库 net/http,返回一个使用 FileSystem 接口 root 提供文件访问服务的 HTTP 处理器.可以方便的实现静态文件服务器. http.L ...

  6. go标准库的学习-path/filepath

    参考https://studygolang.com/pkgdoc 标准库path中有的该path/filepath库中都有,所以一般都使用path/filepath 导入方式: import &quo ...

  7. Go标准库之读写文件(File)

    Go标准库之读写文件(File) 创建一个空文件 package main import ( "log" "os" ) func main() { file, ...

  8. Go 标准库 —— sync.Mutex 互斥锁

    Mutex 是一个互斥锁,可以创建为其他结构体的字段:零值为解锁状态.Mutex 类型的锁和线程无关,可以由不同的线程加锁和解锁. 方法 func (*Mutex) Lock func (m *Mut ...

  9. go标准库的学习-io

    参考https://studygolang.com/pkgdoc 导入方式: import "io" o包提供了对I/O原语的基本接口.本包的基本任务是包装这些原语已有的实现(如o ...

  10. go标准库的学习-bufio

    参考https://studygolang.com/pkgdoc 导入方式: import "bufio" bufio包实现了有缓冲的I/O.它包装一个io.Reader或io.W ...

随机推荐

  1. freeRTOS移植成功

    今天来学习如何移植freeRTOS 也算是走了很多的坑,总算是把系统跑起来了 相关的教程网上也有比较详细的,本文主要说说自己踩的坑 一些汇编文件报错的问题 这个问题的原因是因为网上大部分的移植说明都是 ...

  2. codeforce C. Maximal Intersection

    http://codeforces.com/contest/1029/problem/C 从第一天吃晚饭做到第二天吃完饭--你无法想象我的代码曾经150行 o( ̄┰ ̄*)ゞ 找到所有线段最远的左边和最 ...

  3. vue框架3

    js的几种循环方式 1.v-for可以循环的变量 <!DOCTYPE html> <html lang="en"> <head> <met ...

  4. 基于GPU 显卡在k8s 集群上实现hpa 功能

    前言 Kubernetes 支持HPA模块进行容器伸缩,默认支持CPU和内存等指标.原生的HPA基于Heapster,不支持GPU指标的伸缩,但是支持通过CustomMetrics的方式进行HPA指标 ...

  5. 088_BatchApex_Callout

    global class BatchSync implements Database.Batchable<sObject>, Database.AllowsCallouts { publi ...

  6. layui伸缩左侧菜单栏,已伸缩成功但是右侧主体部分不动

    <ul class="layui-nav layui-nav-tree" lay-filter="test" style="width:200p ...

  7. Route路径

  8. OS-lab4

    OS-lab4 系统调用 系统调用的流程 按照上述的流程逐个分析. user/syscall_lib.c 这个文件位于user文件夹下,也就是用户程序可以调用的函数,相当于操作系统提供给用户程序的一些 ...

  9. docker-compose重新启动单个容器

    这很简单:使用命令: docker-compose restart worker 您可以设置在杀死容器之前等待停止的时间(以秒为单位) docker-compose restart -t 30 wor ...

  10. 使用tkinter开发的一款登录和注册图形化界面

    目录 项目介绍 登录功能 登录界面展示 登录主要功能 登录部分源码 注册功能 注册界面展示 注册主要功能 注册部分源码 源码地址 项目介绍 使用tkinter开发的一款登录和注册图形化界面 使用tki ...